簡體   English   中英

AFL“(奇怪,檢查語法!)”

[英]AFL "(odd, check syntax!) "

我正在嘗試使用AFLpngquant進行模糊測試,並注意到我看到了odd, check syntax! 警告。 之前的回答說 AFL 可能沒有讀取我指定的輸入文件。 我可以通過提供位於我在使用 AFL 進行模糊測試時使用的相同輸入示例目錄中的 png 文件來調用pngquant

我執行的 AFL 命令是:

afl-fuzz -i ./in-filtered -o ./out -x ./dictionary/png.dict -- pngquant @@

AFL 文檔提到odd, check syntax! 當 AFL 無法找到新路徑時,可能會彈出警告。

此外,我注意到一旦 AFL 開始使用havoc模糊測試策略就會彈出警告,下圖顯示一旦模糊器開始使用havoc循環計數就開始增加。

AFL 開始模糊測試

AFL 在使用 Havoc 進行模糊測試時顯示警告

這是因為 pngquant 的使用不正確。

使用 pngquant 時,它會生成一個包含您的結果的 output 文件,當您執行兩次時,您會遇到錯誤:

➜  pngquant git:(master) ✗ ./pngquant  ./test/img/metadata.png
➜  pngquant git:(master) ✗ ./pngquant  ./test/img/metadata.png
error: './test/img/metadata-fs8.png' exists; not overwriting

AFL 沒有機會探索目標,因為它每次都被阻止。

快速瀏覽后,最簡單的修復是這樣的:

afl-fuzz -i ./in -o ./out -- ./pngquant -f -- @@

這會強制 pngquant 覆蓋結果文件,從而啟用 afl-fuzz。 但是,請注意這會產生很多 IO。因此請嘗試使用/dev/null或類似技巧來規避此問題。

快樂的模糊測試!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM