Addison Crump
0859c3ace2
Implement a corpus minimiser (cmin) ( #739 )
...
* initial try
* correct case where cull attempts to fetch non-existent corpus entries
* various on_remove, on_replace implementations
* ise -> ize (consistency), use TestcaseScore instead of rolling our own
* oops, feature gate
* documentation!
* link c++
* doc-nit: correction in opt explanation
don't write documentation at 0300
* better linking
2022-08-29 13:38:46 +02:00
Addison Crump
d6e72560dc
Add test case minimising stage (tmin) ( #735 )
...
* add test case minimising stage
* general purpose minimiser impl, with fuzzer example
* reorganise, document, and other cleanup
* correct python API return value
* correct some docs
* nit: versioning in fuzzers
* ise -> ize
2022-08-29 13:37:55 +02:00
Aiden Hall
fc349bb7b1
Fix spelling error ( #745 )
2022-08-26 16:48:32 +02:00
syheliel
758e49ac70
NYX Executor (GSoC '22) ( #693 )
...
* Add ccache
* Update codecov.yml
* Add libnyx
* Fix
* Add nyx build script
* Fix build.sh && init executor.rs
* Fix commit
* Fix code
* initialize `exector.rs`
* refine API in `nyx_bridge.rs`
* initialze `run_target`
* add `test_nyxhelper`
* initize `test_executor`
* remove `nyx_beidge.rs`
* make `test_executor` compile
* Improve test
* refine code
* update version
* fix docker
* fix docker
* Fix clippy
* Fix build
* fix build && add `set_timeout`
* Fix and refine CI
* fix CI
* Fix CI
* Add platform restrict
* cargo fmt
* add parallel mode
* add example `nyx_libxml2_parallel`
* fix fuzzer example
* fix CI
* add README
* fix CI
* fix CI
* fix CI
* remove unwrap and NyxResult
* code format fix
* add libnyx's rev
* fix format
* change Duration format && Fix CI
* caego fmt
* fix CI
* fix CI
* Add doc
* test CI
* Update test_all_fuzzers.sh
* Update test_all_fuzzers.sh
* Update test_all_fuzzers.sh
* add cache for apt and cargo-install
* Update build_and_test.yml
* Update build_and_test.yml
* tmp test CI
* fix CI
* remove debug cmd
* remove test
* code refine
* code refine
* code refine
* code refine
* add Makefile
* fix example doc for nyx
* add `NyxHelper::new_with_initial_timeout`
* fix `NyxHelper::new`
* fix curl parameter
* code refine
* add check for setup script
* use afl-clang-fast in nyx
* fix logic
* fix makefile
* fix CI
* Update build_and_test.yml
* Update build_and_test.yml
* remove debug cmd
Co-authored-by: syheliel <syheliel@gmail.com>
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-08-25 10:55:35 +02:00
Dongjia Zhang
eac7307c5a
0.8.1 ( #732 )
2022-08-18 10:23:57 +02:00
Dongjia Zhang
ce5ac3968d
Fixing readme & docs ( #730 )
...
* fix
* fix
* add
* add
* fmt
2022-08-15 02:12:35 +02:00
Dongjia Zhang
5d9a19f955
Mac OS Autotokens ( #723 )
...
* mac_tokens
* more
* win fix
* fmt
* fmt c
2022-08-13 02:58:22 +02:00
syheliel
2504b6dae3
Add rustfmt.toml
( #722 )
...
* add `rustfmt.toml`
* format fix
Co-authored-by: syheliel <syheliel@gmail.com>
2022-08-12 02:28:32 +02:00
Dominik Maier
12052b5f1c
Remove num_cpus dependency ( #717 )
...
* Remove num_cpus dependency
* Fix build, remove more num_cpus
2022-08-03 07:49:32 +02:00
Patrick Gersch
b2a1e03703
Qemu arm launcher ( #708 )
...
* Adding qemu_arm_launcher crate
* Trying to fix qemu arm usermode
* Cargo fmt
* Adding CROSS_CC env
* Remove hardcoded arm-linux-gnueabi-gcc and replace by CROSS_CC
* Adding arm-linux-gnueabi-gcc to github workflows for ubuntu
* Fixing typo in apt install package
* Resetting LR after each fuzzing emulation
* Cargo fmt after merge conflict
* Using GuestAddr
* Compiling, running and running with artificial crash detection
* Adding dependencies for github workflow to cross compile for arm
* Fixing github workflow for ubuntu fuzzer
* arm-linux-binutils for mac in github workflows
* Qemu does not work for mac, no need to compile qemu_arm_launcher harness for it
2022-08-02 11:46:24 +02:00
Dongjia Zhang
376e3adfcd
Bump Frida, Capstone versions ( #715 )
...
* bump
* fix
* fix
* revert
* fix
* fmt
* fix
2022-08-01 16:53:39 +02:00
Dominik Maier
5a8bdae26f
Update requirements ( #714 )
...
* Update requirements
* more updates
* nits
* more updates
* update nix for fuzzers
* use any regex 1 instead of 1.6
2022-07-29 09:54:16 +02:00
Dongjia Zhang
a5248d0250
Change StdWeightedScheduler API ( #712 )
...
* change
* fmt
2022-07-27 14:17:45 +02:00
Dongjia Zhang
0aba272a7d
Update fuzzbench_weighted to EXPLORE, fix linking ( #707 )
...
* Explore+weighted
* fix
* fmt
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2022-07-25 14:03:35 +02:00
Mrmaxmeier
321bcfeba1
Cleanup duplicate package warnings ( #702 )
...
* cleanup duplicate package warnings
* libmozjpeg fuzzer: disable png reading support
libmozjpeg's libpng support is not used by the fuzzing harness,
and the mozjpeg-4.0.3 release has a build system issue with
newish libpng versions.
2022-07-17 14:17:49 +02:00
s1341
c45b6be7e1
Bump rand version ( #680 )
...
* Bump rand version, dropping support for lain
* using lain version with fixed rand
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-07-16 01:46:32 +02:00
Patrick Gersch
3ae3dc7c62
Fixes to TUI monitor if main thread panics ( #699 )
...
* Trying to fix the tui if the main thread panics
* cargo fmt
* Prettifying code
2022-07-16 01:45:53 +02:00
Dongjia Zhang
ffe8dbf6af
Bump to 0.8.0 ( #696 )
...
* upd
* more
2022-07-11 21:59:11 +02:00
Dongjia Zhang
66b5fe8678
Extend weighted scheduler ( #685 )
...
* extend
* fix
* fmt
* more fix
2022-06-29 09:43:42 +09:00
Dongjia Zhang
405a1919b8
Still fixing ci ( #683 )
...
* fix
* fix
* more
* cargo fixed??
* fixed??
* clp
* fix
2022-06-28 16:56:28 +09:00
Andrea Fioraldi
7147170240
New hooks for libafl_qemu ( #673 )
...
* new block and edge hooks
* Wrking new hooks
* no Pin, just box
* working call tracing
* invalidate_block flag
* working call stack tracking helper
* callstack push
* fixes
* py
* fixes
* clippy
* clippy
* gdb api
* kill introspection
* fix
* upd qemu
* upd qemu
2022-06-16 11:09:07 +02:00
Dongjia Zhang
c9f802a3b8
Improve map feedback/observer ( #665 )
...
* improve
* a
* fix it back
* more
* NO
* try
* fix python
* more
* specialize map map feedback with u8
* more
* fmt
* usable_count = len
* clp
* restore iterator based map feedback
* simd specialization
* optimize hitcounts
* fix hitcounts
* no_std
* moar unsafe
* fix
* clippy
* clippy
* opt non-specialized is_interesting
* fmt
* op post_exec
* cleanup
* even more
* allow
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2022-06-10 10:14:12 +02:00
Andrea Fioraldi
323b8e23ee
LIBAFL_DEBUG_OUTPUT in Launcher and OnDiskTOMLMonitor to create fuzzer_stats ( #666 )
...
* LIBAFL_DEBUG_OUTPUT in launcher on unix
* OnDiskTOMLMonitor
* fix
* clp
* clippy
* fix
* fix
* allow all
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2022-06-08 17:32:58 +02:00
Dongjia Zhang
bc6a032843
Windows CI for frida ( #658 )
...
* harness & makefile.toml
* Update build_and_test.yml
* Update build_and_test.yml
* Update build_and_test.yml
* rename
* no stdout
* Update harness_win.cpp
* Update harness_win.cpp
* Update Makefile.toml
* Update build_and_test.yml
* Update Makefile.toml
* Update Makefile.toml
* fix
2022-05-30 23:06:37 +02:00
Dominik Maier
3a5118fc02
Moved core_affinity to bolts ( #655 )
...
* moved core_affinity to bolts crate
* clippy
* fixes
* ubuntu
* ubuntu++
* moved core_affinity to os
* fixed more imports
* fixed imports
* fixed test
* moved core_affinity out of os
* added affinity
* moved to windows crate
* fmt
* some tiny fixes
* more win
* refactoring
* win?
* win?
* clp
* upd
* more
* copy & paste & fix
* clp
* try
* fix
* more
* fix
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2022-05-30 10:02:46 +02:00
Dominik Maier
bfe69aea09
Format C/Cpp code in ./scripts/fmt_all.sh ( #653 )
...
* format all (clang format 13)
* added clang-format check
* re-add missing newline
* cargo doc was missing
* more brackets
* fixed fmt workflow
* clang format
* shellcheck
* install clang-format-13
* update ubuntu for maximum clang-formattability
* yml whitespaces
* fmt
* shellcheck only for .sh
* oops path
* ignored shellcheck warning
2022-05-29 03:23:02 +02:00
Andrea Fioraldi
a544bc042d
Move build_id to bolts ( #649 )
...
* Drop the build_id depedency and move to bolts
* tabs->spaces
* clippy build_id fixes
* frida clippy
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-05-27 01:05:03 +02:00
Dongjia Zhang
5887d1a7b7
Delete frida_libpng/Makefile ( #652 )
2022-05-27 01:04:09 +02:00
Andrea Fioraldi
28edbad618
Refactor libafl Python bindings ( #632 )
...
* SerdeAny MapFeedbackState
* Fix macro syntax
* alloc
* fix
* Metadata calibrate and map feedback
* metadata feedback states
* compile
* fmt
* Register common generic types
* tests
* sugar
* no_std
* fix book
* alloc
* fix fuzzers
* fix
* fmt
* disable python bindings for libafl
* clippy
* fmt
* fixes
* fmt
* compiling python bindings
* no uaf in python observer
* working python observer, feedback and executor
* mutators
* fmt
* nits
* added autofix script
* clippy
* clippy
* more clippy
* fix
* ignore clippy for deserialization
* newlines
* nits
* fmt
* feedbacks
* generators
* methods
* feedbacks
* pyerr
* fix
* fix
* fmt
* python bindings in CI
* fix
* fix
* fix
* autofix
* clippy
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-05-25 16:56:06 +02:00
Andrea Fioraldi
da537aae83
FeedbackState as metadata ( #627 )
...
* SerdeAny MapFeedbackState
* Fix macro syntax
* alloc
* fix
* Metadata calibrate and map feedback
* metadata feedback states
* compile
* fmt
* Register common generic types
* tests
* sugar
* no_std
* fix book
* alloc
* fix fuzzers
* fix
* fmt
* disable python bindings for libafl
* clippy
* fmt
* fixes
* fmt
* fix
* fix
* fix
* fix
* fix
* release autofix
* fix
* fix
* fix
* fmt
* fix
* fix
* name
* fix
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-05-24 16:05:22 +02:00
Dominik Maier
fa839bb08d
More docs and less pub types ( #646 )
...
* more docs
* nits
* fixes
* win fix
* fmt
2022-05-23 13:42:51 +02:00
Dongjia Zhang
283ceaac9b
Make weigthed scheduler independent of powersheduler stage ( #599 )
...
* rename & add metadata in scheduler, not stage
* Update testcase_score
* rename
* fix
* update handicap in scheduler
* fmt
* update fuzzers
* doc
* fmt
* fix
* fmt
* more
* fix
* fix
* fix
* fmt
2022-05-08 16:43:02 +02:00
WilliamParks
92196cc9be
Fixes forkersever_simple issue on Macs ( #623 )
...
* Fixes forkersever_simple issue on Macs
* fixes formatting issue
* Fixes formatting issue
2022-05-08 11:17:55 +09:00
Dongjia Zhang
2ba32c0173
Update Clap dependency ( #621 )
2022-05-06 01:12:25 +02:00
Dominik Maier
1690dbb2cc
Sender id fix ( #610 )
...
* Starting to fix id issues
* add crashing testcase
* remove debug flags
2022-04-15 19:25:51 +02:00
Andrea Fioraldi
e8f5949aec
Fix linking with -z defs ( #601 )
...
* Always link no-link-rt when not linking a fuzzer
* Handle dynamic
* fuzzbench
* Handle -z defs
* fix
* clippy
* clippy
* windowa
* fix
2022-04-08 18:06:27 +02:00
Dongjia Zhang
fa69b9eff9
Powerschedule::RAND ( #596 )
2022-04-07 21:00:59 +09:00
Dongjia Zhang
eaa46075cc
COE Fix ( #593 )
...
* fix
* clp
2022-04-04 18:07:19 +02:00
Dongjia Zhang
e77e147a74
Update Clap ( #591 )
...
* upd
* fix
2022-04-04 17:59:34 +02:00
Dongjia Zhang
034a4870e2
Set the number of stacked mutations in MOpt mutator ( #587 )
...
* max_stack_pow
* fix
* fix
* fmt
* rename
2022-04-03 09:25:59 +09:00
Toka
c1b8107060
Rename fuzzbench_selected ( #581 )
...
* rename
* rename
2022-03-29 14:59:27 +02:00
Dominik Maier
5df130188a
Fixing CI from #559 ( #580 )
...
* updated ref
* update symcc
* updated symcc
* CI for symcc
* updated symcc
* enabling git
* add runtime deps to makefile
* only linux
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2022-03-29 14:57:38 +02:00
Toka
abf1a66028
Rename FavFactor to TestcaseScore; More TestcaseScores ( #574 )
...
* rework aflfast
* more
* move fuzz_Mu
* weighted
* fix
* borrow checker fix
* compute_weight
* alias_table
* fmt
* fix & rename
* fix & less mut
* no_std
* no_std
* clippy
* 32bit clippy fix
* top_rated for compute_weight
* fix
* clippy & metadata Init
* fix
* fix
* fix
* clippy & fmt
* change fuzzers
* fuzzbench_selected
* fmt
* compute() has state
* use favfactor for powerschedules also
* fix merge
* rename
* fmt & clippy
* no_std
* fmt
* clippy
* rename
* fmt
* rename
* fmt
* fix
* fix
* fmt
* fix
* fix
2022-03-27 04:04:46 +09:00
Chaofan Shou
e20d345d99
Fix concolic fuzzer and add related CI tests ( #559 )
...
* fix concolic fuzzer & add related CI tests
* More cargo fmt
* More cargo fmt
* order matters
2022-03-26 13:51:14 +01:00
Dongjia Zhang
acba89b92a
Makefile.toml for frida fuzzer ( #566 )
...
* frida makefile.toml
* makefile.toml
2022-03-23 11:30:20 +01:00
Dongjia Zhang
c72f773ca0
Weighted corpus entry selection ( #570 )
...
* rework aflfast
* more
* move fuzz_Mu
* weighted
* fix
* borrow checker fix
* compute_weight
* alias_table
* fmt
* fix & rename
* fix & less mut
* no_std
* no_std
* clippy
* 32bit clippy fix
* top_rated for compute_weight
* fix
* clippy & metadata Init
* fix
* fix
* fix
* clippy & fmt
* change fuzzers
* fuzzbench_selected
* fmt
2022-03-23 02:01:00 +09:00
syheliel
6b95361123
Add doc for example baby_fuzzer_*
( #564 )
...
* Add doc for example `baby_fuzzer_*`
* Fix `mdbook build`
Co-authored-by: syheliel <syheliel>
2022-03-14 19:14:46 +01:00
Andrea Fioraldi
8eab7d6063
Fix fuzzers ( #563 )
...
* fix libfuzzer_libpng_ctx
* fix
* fix
* Fix stb
* fix
* fix
2022-03-07 08:59:01 +01:00
Andrea Fioraldi
09cf136c63
Fix CI ( #562 )
...
* fix libfuzzer_libpng_ctx
* fix
* fix
2022-03-04 15:51:54 +01:00
Andrea Fioraldi
e6bc89555f
Fix GeneralizationStage ( #561 )
...
* fmt
* Fix generalization
2022-03-03 15:20:37 +01:00