Releases: IntelLabs/kafl.fuzzer
Releases · IntelLabs/kafl.fuzzer
v0.6.1
What's Changed
- Fix/dynaconf validator by @Wenzel in #60
- config: fix appdir import by @Wenzel in #61
- config: add grimoire key in validators by @Wenzel in #62
- settings: don't force qemu_image to be a path by @Wenzel in #65
- manager.py: remove useless check by @Wenzel in #67
- Parse range submit by @Wenzel in #68
- config: fix load_config optional key parameter by @Wenzel in #69
- config: move action as required argument for debug subcommand only by @Wenzel in #71
- Fixing syntax error by @kiwids0220 in #72
- fuzzer: fix find_diffs comparison by @Wenzel in #73
- util: fix None value in find_diffs by @Wenzel in #74
- Adding top level permissions to support Intel OSSF Scorecard requirem… by @michaelbeale-IL in #77
- config: set qemu_append only when qemu_kernel is defined by @Wenzel in #78
- CI: generate release notes by @Wenzel in #79
New Contributors
- @kiwids0220 made their first contribution in #72
- @michaelbeale-IL made their first contribution in #77
Full Changelog: v0.6...v0.6.1
v0.6
🌟 Features
✨ Improvements
- refactor kafl command-line with subcommands (#22)
- move kafl scripts into a single kafl entrypoint:
kafl_fuzz.py
->kafl fuzz
kafl_debug.py
->kafl debug
kafl_cov.py
->kafl cov
kafl_plot.py
->kalf plot
kafl_gui.py
->kafl gui
scripts/mcat.py
->kafl mcat
- option
--afl-skip-ranges
has been removed (never used anyway) - removed config override via
$PWD/kafl.yaml
(not explicit, users don't expect that behavior) - rename and reformat
$WORKDIR/config
(MessagePack) ->$WORKDIR/config.yaml
(YAML)
- move kafl scripts into a single kafl entrypoint:
- add early logging of fuzzer loaded configuration before validation (#38)
- deprecate
KAFL_CONFIG_DEBUG
- deprecate
- remove
pygraphviz
dependency (#43) input
config key will default to theworkdir
value (#58)- no need to specify
kafl cov --input $KAFL_WORKDIR
anymore
- no need to specify
🔧 Fixes
- avoid Qemu hang when handling ABORT in pre-init phase (#34)
- fix including
default_settings.yaml
in the final package (#35)
📖 Documentation
- add
docs/fuzzer_configuration.md
to document new configuration management based on Dynaconf (#22)
🧰 Behind the scenes
v0.5.1
v0.5
First release of kAFL Fuzzer since refactoring to separate project!
🌟 Features
- new option --log-crashes directly stores hprintf snippets of unique crashes
- new default option --kickstart injects random seeds if Workers idle (insufficient seeds/corpus)
- turn hardcoded qemu config into configurable qemu_base, qemu_append, qemu_extra options
- use official Github releases (#31)
✨ Improvements
- Smarter CPU affinity selection (#10)
- Update --cpu-offset to override smart CPU affinity selection (#27)
- Redirect qemu logging on --log (#29)
- Option --trace has changed to write binary PT dumps as seen during execution (faster + resilient to non-determinism)
- Option --trace-cb was added for legacy storing decoded traces via libxdc callback
- Delay progress display until Worker is ready, detect and exit on guest abort (#25)
- Detect and abort on Qemu startup failure failure (#30)
🔧 Fixes
- abort if both --resume and --purge are given (#2)
- fix infinite loop in kafl_debug / gdb action (#3)
- worker.py: fix custom timeout setting in execute_naked() (#4)
- robustness fixes to qemu startup (#5)
- Fix config loading defaults and error handling (#9)
- ghidra_run.sh: fail to stderr (#11)
- config.py: apply expand_vars only to existing config options (#20)
- kafl_cov.py: fix handling of timeout exception (#21)
- fix kafl_debug.py for new pt dump trace mode (#26)