今天要介紹的是優化 mutation 的方法,同時這也是優化 fuzzer 系列的最後一篇文章。Mutation 中文翻譯為變異,也就是對 input 做隨機化...
先前介紹的 fuzzer 如果沒有特別說明,基本上目標都是執行在 userspace 的程式,然而當 fuzzing 這個主題越來越熱門,開始有研究人員思考是否...
昨天花了滿大的篇幅介紹虛擬化技術,今天會著重在 kAFL 論文提出的設計架構。 Design kAFL 將整個系統分成三個 component: kAFL-...
由於 kAFL 是透過 instruction hypercall 在 host 與 guest (VM) 之間交換資訊,因此需要新增客製化的 hypercal...
再來介紹 kAFL 原始碼中最後一個 component: kAFL-fuzzer。kAFL 在 host 執行的部分基本上都是用 python 所撰寫,包含執...
先前有提到 syzkaller 可以說是目前最廣為使用的 OS fuzzer,不但整個部署的過程只需要下幾個命令,也提供使用者客製化執行環境,像是允許執行的 s...
今天會簡單介紹 syzlang 的格式與撰寫方法,並透過原始碼來了解 syz-manager 如何初始化執行環境與管理系統。 syzlang syzkaller...
昨天介紹 syz-manager 建立了 VM pool 來復現漏洞或是 fuzzing,但實際上是用 RPC (remote procedure call)...
相較於 OS fuzzer 來說,hypervisor fuzzer 的可能又比較冷門一點,除了需要 hypervisor 機制的背景知識,架構 fuzzing...
Hypercube 用了與 Nyx 截然不同的框架來對 hypervisor 做 fuzzing,今天就會介紹他在論文中提出的系統架構。而在文章最後,我也會分享...