fuzzing-dictionary
Fuzzing dictionaries guide fuzzers with domain-specific tokens. Use when fuzzing parsers, protocols, or format-specific code.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Fuzzing dictionaries guide fuzzers with domain-specific tokens. Use when fuzzing parsers, protocols, or format-specific code.
How to use
Przygotuj plik słownika jako zwykły plik tekstowy zawierający cytowane ciągi znaków reprezentujące znaczące tokeny dla Twojego celu testowania. Każdy wpis może być prostym ciągiem w cudzysłowie (np. "keyword") lub parą klucz-wartość (np. kw="value"). Dla znaków niedrukowalnych użyj sekwencji heksadecymalnych, na przykład "\xF7\xF8".
Zidentyfikuj, czy Twój fuzzer to libFuzzer, AFL++ czy cargo-fuzz, ponieważ każdy z nich obsługuje słowniki w tym samym formacie, ale z różnymi flagami wiersza poleceń.
Jeśli używasz libFuzzer, uruchom fuzzer z flagą -dict wskazującą na plik słownika: ./fuzz -dict=./dictionary.dict wraz z innymi parametrami.
Jeśli używasz AFL++, uruchom afl-fuzz z flagą -x przekazując ścieżkę do pliku słownika: afl-fuzz -x ./dictionary.dict oraz pozostałe opcje.
Jeśli używasz cargo-fuzz, uruchom cel fuzzingu z flagą -dict: cargo fuzz run fuzz_target -- -dict=./dictionary.dict.
Monitoruj postęp pokrycia kodu — słownik powinien pomóc fuzzerowi omijać wczesne kontrole walidacji i docierać do głębszych logik, zwłaszcza w parserach, obsługach protokołów i procesorach formatów plików.