project zero talk note
任務:讓0day更難
工作:
- 漏洞研究
- exploit開發
- 緩解設計和審查
0x02 Project Zero如何找bug
1.我應該從哪兒找?
- 優先順序。 攻擊者會在哪裡看?重視單個研究人員的經驗+專業知識
- 找到新的攻擊面,或迭代已知的攻擊面。
2.我應該怎麼找?也就是怎麼找到一個切入角度
- 選擇處理不可信資料的輸入點並找到其bugs。
- 選擇一個bug類來查詢例項。
- 選擇一個功能/規範,找出不同實現中的常見缺陷。
- 查詢已知問題的變形。
3.CVE-2018-10751
4.Fuzzing
Canonical mutation fuzzing(大概意思是利用經典資料的變種來進行fuzz):語料庫建立,引數優化,模糊測試,覆蓋反饋,崩潰分析。
自定義模糊測試,如定製生成器或檔案格式突變感知。
5.手動審查
有時是線性的:列舉函式列表並前向分析。
有時橫向:找到一些脆弱屬性的例項(錯誤類,重複錯誤,非標準模式),稍後建立“觸發點”。