このページの内容

Awesome Fuzzing

Fuzzingを扱う資料や関連プロジェクトをまとめたAwesomeリストです。

目次

書籍

講演

論文

範囲を明確にするため、主要4セキュリティ会議の2008〜2025年のファジング論文を収録します。(i)NDSS、(ii)IEEE S&P、(iii)USENIX Security、(iv)ACM CCSです。

注記: 題名に「fuzz」を含むかどうかで論文を選定しています。関連論文でも題名に含まれない場合は漏れている可能性があります。その場合はPull Requestを作成してください。掲載可否をレビューします。

Network and Distributed System Security Symposium(NDSS)

2025(10本)
2024(7本)
2023(4本)
2022(4本)
2021(4本)
2020(4本)
2019(5本)
2018(4本)
2017(2本)
2016 (1 paper)
2008 (1 paper)

IEEE Symposium on Security and Privacy(IEEE S&P)

2025(7本)
2024(14本)
2023(10本)
2022(5本)
2021(5本)
2020(5本)
2019(4本)
2018(3本)
2017 (1 paper)
2015 (1 paper)
2010 (1 paper)

USENIX Security

2025(15本)
2024(12本)
2023(19本)
2022(14本)
2021(6本)
2020(10本)
2019(2本)
2018(3本)
2017(2本)
2015 (1 paper)
2014 (1 paper)
2013 (1 paper)
2012 (1 paper)

ACM Conference on Computer and Communications Security(ACM CCS)

2025(11本)
2024(19本)
2023(9本)
2022(6本)
2021(8本)
2020 (1 paper)
2019(3本)
2018(2本)
2017(7本)
2016(3本)
2013(2本)
2012 (1 paper)
2008-2009 (2 papers)

ArXiv(AI・機械学習によるファジング)

その他

ツール

fuzzing-survey.orgの分類体系に基づき、対象別に整理したオープンソースファジングツール集です。GitHubでの人気、更新時期、原著者の公式リポジトリ、活発な保守状況を組み合わせて選定します。

ファイル

  • AFL++ - GoogleのAFLを上回るフォークツールで、速度が速く、より多くの変異と優れた変異、さらに優れたインストルメンテーションを提供し、カスタムモジュールのサポートも可能に。
  • Angora - 経路制約を符号化なしで解決することで分岐カバレッジを向上させる、変異ベースのカバレッジガイド付きフュージャー。

カーネル

  • ACTOR (2023) - 行動を指揮するカーネルフュージングフレームワークで、発生した行動とその時系列関係を活用して入力を作成する。
  • NTFuzz more effective fuzzing向けの(2021) - A type-aware Windows kernel fuzzer that statically analyzes system binaries to infer system call types。
  • KRACE (2020) - カーネルファイルシステムにおけるデータレースを検出する、カバレッジを指揮するフュージングフレームワークで、マルチスレッドのシステムコールシーケンスを介して並列性を探索する。
  • Razzer (2019) - Linuxカーネルにおける競合条件や並列バグを検出するため、静的解析と二段階フュージングを用いたカーネルフュージャー。
  • Hydra automatically discovering semantic bugs in file systems using input mutators, feedback engines, and customizable checkers向けの(2019) - A fuzzing framework。
  • Janus (2019) - ファイルシステムイメージとシステムコールシーケンスを同時に変異させることで、Linuxカーネルファイルシステム内のメモリ腐食を検出するファイルシステムフュージャー。
  • DIFUZE Linux kernel drivers that automatically recovers ioctl interfaces via LLVM analysis and generates targeted test cases向けの(2017) - An interface-aware fuzzer。
  • IMF (2017) - APIモデルの自動推論を活用したコアAPIフュージャーが、macOSコアAPIにおける脆弱性を発見する
  • kAFL finding OS kernel vulnerabilities向けの(2017) - A hardware-assisted x86-64 VM kernel fuzzing framework with performant VM reloads。
  • syzkaller (2015) - フリーソフトウェア・ベースの、未監視のカバレッジを指揮するカーネルフュージャーで、FreeBSD、Fuchsia、gVisor、Linux、NetBSD、OpenBSD、およびWindowsをサポートする。
  • Trinity (2012) - Linuxのシステムコールフュージャーで、システムコールに半自動的なランダム引数を生成し、有効なファイルディスクリプタ、フラグ、範囲偏りの値を含む。

ネットワーク

API

  • WuppieFuzz - LibAFLをベースに構築されたカバレッジ指向のREST APIフュージャー
  • IvySyn - discovering memory error vulnerabilities in Deep Learning (DL) frameworks向けのA fully-automated framework。
  • MINER - 3つのデータ駆動設計を統合したREST APIフュージャーが、シーケンス生成を指導し、リクエスト生成の品質を向上させ、不正なパラメータ使用による一意のエラーをキャプチャする
  • RestTestGen - automated black-box testing of RESTful web APIs向けのA robust tool and framework designed。
  • GraphFuzz - building structure-aware, library API fuzzers向けのAn experimental framework。
  • Minerva - APIモッドリファレンス関係を活用したブラウザフュージャーが、各テストケースにおいて高度に関連性の高いブラウザAPI呼び出しを合成する
  • FANS - Android native system services with four components: interface collector, interface model extractor, dependency inferer, and fuzzer engine向けのA fuzzing tool。

JavaScript

ファームウェア

ハイパーバイザー

CPU

  • DifuzzRTL - CPU verification向けのA differential fuzz testing approach。
  • MorFuzz - RISC-Vプロセッサ向けの汎用フュージャーフレームワークで、ソフトウェアトリガー可能な機能バグを効率的に検出
  • SpecFuzz - Spectre vulnerabilities向けのA tool to enable fuzzing。
  • Transynther - Meltdown attacks with various faults and microcode assists向けのAutomatically generates and tests building blocks。

ライブラリ

Web

  • TEFuzz - テンプレートエスケープバグの検出および悪用を促進するためのカスタマイズされたフュージャーフレームワーク
  • Witcher - 変異フュージャーを用いてウェブアプリケーションを探索し、エラー拡大を用いてコマンドおよびSQLインジェクション脆弱性を検出するウェブアプリケーションフュージャー
  • CorbFuzz - generating as many responses from a web application as possible without need of setting up a database向けのA state-aware fuzzer。

DOM

引数

ブロックチェーン

  • Fluffy - finding consensus bugs in Ethereum向けのA multi-transaction differential fuzzer。
  • LOKI - ブロックチェーン合意プロトコル向けのフュージャーフレームワークで、合意メモリおよび論理バグを検出する

DBMS

  • Squirrel - database management systems (DBMSs)向けのA fuzzer。

コントリビューション

コントリビューションを歓迎します。最初にコントリビューションガイドラインを確認してください。