转:Google Project Zero挖洞经验整理
https://www.sec-un.org/google-project-zero%E6%8C%96%E6%B4%9E%E7%BB%8F%E9%AA%8C%E6%95%B4%E7%90%86/
1. 目标:漏洞挖掘越来越难
2. 关注客户端,包括安卓,IOS,WINDOWS操作系统,PDF,DOC,AV等等;各种OSS开源代码安全,并且开放了OSS-FUZZ工具;
3. 漏洞削减技术来帮助Google的技术提升,包括彻底修复一类漏洞、彻底修复这个漏洞,此种漏洞的攻击面、增加这个漏洞利用的阶段性必须使用组合技术绕过;
4. 漏洞挖掘方法:Fuzzing、优秀的漏洞挖掘者想出如何挖洞的思路、针对高难度的内核等需要手工(手工输出经验);
5. 公开漏洞挖掘和使用的技术:
https://github.com/google/oss-fuzz
https://github.com/google?utf8=%E2%9C%93&q=fuzz&type=&language=\
工具:valgrind
公开设计方法:例如chrome的设计原则:https://www.chromium.org/developers/design-documents
Google安全架构:https://cloud.google.com/security/security-design/
公开漏洞细节:https://googleprojectzero.blogspot.com/
Sanitizer技术分成:
a、内存Sanitizer:未初始化指针;
b、地址Sanitizer:发现UAF、缓冲区溢出、内存泄露; Google 99%项目应用在单元测试;
c、进程Sanitizer:发现竞争条件等漏洞;
d、UBSanitizer:未知行为的;
6. 参考地址:
https://www.youtube.com/watch?v=ZKIIPu1wqHs Google Project One
https://www.youtube.com/watch?v=FP8zFhB_cOo Google Fuzzing
7. 发现漏洞列表:
https://code.google.com/p/google-security-research/issues/detail?id=222
https://bugs.chromium.org/p/project-zero/issues/list?can=1&q=&colspec=ID+Type+Status+Priority+Milestone+Owner+Summary&cells=ids
8. Google Fuzzing规模
a、 24*7无间断的5000核CPU跑;
b、5000+ bugs in chromium 1200+ bugs in ffmpeg;
c、数百种fuzzing方式;
d、高代码涵盖量;
e、工具Libfuzzer:最典型的发现了OpenSSL心脏滴血漏洞;
f、高效样本构造;
9. 详细细节(高端玩法Timeless debugger技术有点类似狼来了高端玩法狼自杀骗女巫解药,给一个好人身份)
工具:
http://qira.me/
https://github.com/BinaryAnalysisPlatform/qira
10.最终目标
Google是从设计框架规范、到单元测试、到漏洞挖掘深度和方式、到削减漏洞一条线的闭环。(纯漏洞角度,没有涵盖其他SDL原则和方法)
11、其他
另外Google、Facebook等也关注Firmware安全
https://firmwaresecurity.com/
https://www.youtube.com/watch?v=z4-N2HyQMVU
12个供应商,40个0day,10个研究者共同发布
转:Google Project Zero挖洞经验整理的更多相关文章
- [转帖]挖洞经验 | 获取Facebook Marketplace卖家精确地理位置信息
挖洞经验 | 获取Facebook Marketplace卖家精确地理位置信息 https://www.freebuf.com/vuls/202820.html 知识就是力量 5000刀的一个漏洞. ...
- 【挖洞经验】如何在一条UPDATE查询中实现SQL注入
直奔主题 跟往常一样,在喝完我最爱的果汁饮料之后,我会习惯性地登录我的Synack账号,然后选择一个应用来进行渗透测试,此时我的“黑客之夜”便正式开始了. 我与很多其他的安全研究人员的习惯一样,我会在 ...
- 挖洞经验 | 绕过WAF限制利用php:方法实现OOB-XXE漏洞利用
几个星期以前,作者在某个OOB-XXE漏洞测试中遇到过这样一种场景:目标应用后端系统WAF防火墙阻挡了包含DNS解析在内的所有出站请求(Outgoing Request),但最终,通过利用php:// ...
- 穿戴-智能穿戴-ProjectGlass:谷歌眼镜(Google Project Glass)
ylbtech-穿戴-智能穿戴-ProjectGlass:谷歌眼镜(Google Project Glass) 谷歌眼镜(Google Project Glass)是由谷歌公司于2012年4月发布的一 ...
- 第二届i春秋挖洞大赛的一些感想
挖洞比赛嘛,根据规则就是一个问题,如何在短时间内挖到更多.等级更高的漏洞? 先分析这个问题,需求是什么? 更多? 等级更高? 短时间内? 首先要解决的是时间的问题 时间有限,所以你必须要快.如何快?把 ...
- 挖洞入门_显错型SQL注入
简介:在漏洞盒子挖洞已经有一段时间了,虽说还不是大佬,但技术也有所进步,安全行业就是这样,只有自己动手去做,才能将理论的知识变为个人的经验.本篇文章打算分享一下我在挖显错型SQL注入漏洞过程中的一些个 ...
- [转载] 根据多年经验整理的《互联网MySQL开发规范》
原文: http://weibo.com/p/2304181380b3f180102vsg5 根据多年经验整理的<互联网MySQL开发规范> 写在前面:无规矩不成方圆.对于刚加入互联网的朋 ...
- unity, 挖洞特效
想模仿这个游戏的挖洞特效: 思路: 效果: 代码下载:http://pan.baidu.com/s/1kUN8goZ
- Unity3D研究院之脚本生成Android Google Project
一般安卓自动化打包直接会生成个APK出来,但是我不想生成APK,我想生成Eclipse项目. 然后在自动化完成后面的打包工作. 1 2 3 4 5 6 7 8 9 10 11 using Un ...
随机推荐
- py_faster_rcnn识别出来的结果好多红框重叠
py_faster_rcnn识别出来的结果好多红框重叠, 可以通过调节demo.py中的NMS_THRESH的值进行限制. NMS_THRESH表示非极大值抑制,这个值越小表示要求的红框重叠度越小,0 ...
- java分页通用篇
一.创建分页通用类 package com.dkyw.util; import java.util.List; public class Page<T> { private int tot ...
- DotNet 学习笔记 Servers
Servers ASP.NET Core ships with two different HTTP servers: •Microsoft.AspNetCore.Server.Kestrel (AK ...
- MongoDB 数据库(2)
db.collectionName 集合对象 获取集合对象 db.getCollection('collection_name') e.g. db.getCollection("class0 ...
- bzoj 2733 平衡树启发式合并
首先对于一个连通块中,询问我们可以直接用平衡树来求出排名,那么我们可以用并查集来维护各个块中的连通情况,对于合并两个平衡树,我们可以暴力的将size小的平衡树中的所有节点删掉,然后加入大的平衡树中,因 ...
- javascript 变量类型判断
一.typeof 操作符 对于Function, String, Number ,Undefined 等几种类型的对象来说,他完全可以胜任,但是为Array时 "); typeof arr ...
- js中的for in 循环
1.数组 使用for in 遍历数组时,其索引被视为对象的属性,从而直接输出数组的索引 var arr = ["a","b","c"]; f ...
- ms17010利用失败解决一则
没有反弹得到session并且提示如下: [-] 10.0.131.2:445 - Service failed to start, ERROR_CODE: 216 换了一个payload set p ...
- face_recognition 人脸识别报错
[root@localhost examples]# python facerec_from_video_file.py RuntimeError: module compiled against A ...
- abp 调试
概要 研究Abp(ASP.NET Boilerplate)框架有几个月了,从一遍遍的看官方文档,到现在看源码,一路走来学习了很多知识. 很多新手都很关心源码如何调试,我也是如此,在反复看Debuggi ...