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个研究者共同发布