* Decode with callback
* WIP restore intelpt module
* Fix build_target if target_dir doesn't exist
* WIP itelpt qemu/kvm example: bootloader
* qemu config refactoring
* Fix intel_pt_command_executor target dir
* * QEMU error refactoring*
* back to one QEMU init function
* other small things
* update test
* Bump libipt
* waitpid_filtered to ignore SIGWINCH
* Fix warnings unused manifest key: *.version
* Add export_raw feature to libafl_intelpt
* derive Debug for IntelPTHook
* Clippy
* Light refactor of EmulatorModules
* qemu is now a parameter to EmulatorModule callbacks and most function hooks.
* EmulatorModules is initialized before QEMU is initialized.
* Update target program ELF offsets
* fmt
* * asan fixed size accesses working with generics
* continue to propagate qemu argument as hook first parameter
* use pre_syscall* and post_syscall* everywhere
* fix some clippy stuff
* fmt
* Add comment to KVM pt_mode check
* refactor
* Add intel_pt_export_raw feature in libafl
* fix fuzzers
* * refactor asan and asanguest modules to avoid custom init of QEMU and use the module interface instead.
* adapt qemu_launcher example to fully work with emulator, since qemu must now be initialized by emulator.
* fmt
* clippy
* fix qemu_coverage
* fmt
* forgot qemu args in launcher
* map_error instead of unwrap
* use correct args
* Update to new libafl_qemu
* adapt api
* borrow checker friendly join_split_trace
and copy trace before deocde to prevent decoding failures
* testing stuff
* Set ip_filters (also) with builder
* Move trace to file
* Store a pt_builder in module
enable the setting of filters and other pt settings
* baby_bootloader target
* Best bootloader ever
* new builder?
* use closure for qemu config from emulator builder.
* better format
* clippy + fmt
* Fix build target
Create target directory if doesn't exist
* Remove filter on speculatively exec blocks
since also committed blocks can have this flag
* Add current ip_filters getter
* Fix possibile infinite loop in trace decode
* HW breakpoint + snapshot
* add snapshot and exit at first objective
* prefer raw pointers to slice_from_raw_parts_mut
since the latter is highly unsafe and allows more potentially dangerous reordering
* Add cpu option to QEMU config
* Add cpu option and minor improvements
* fix cargo run causing recompile
* no default devices
* windows clippy fix
* Exclude intel_pt feature from CI as all systemmode feats
* Add qemu_intel_pt_bootloader to CI
* Fix NopPageFilter
* Fix qemu_config
* Restore HW breakpoints
* Lints
* return Result for hw bp set/remove
* mark join_split_trace as unsafe
* Put the qcow2 in a tmpfs ramdisk
10x exec/sec
* Post merge fixes
* Try out libipt 0.3 alpha
* Try out libipt 0.3 alpha also in hook
* Clippy
* New libipt
* Post merge fixes
* Bump libipt
* Drive cache None
* Post merge fixes
* Use SectionInfo from libipt
* No slice::from_raw_parts_mut, just use raw pointer
* Cache the decoder builder
* Update qemu-bridge
* Add qemu -append param
* Move linux specific code to a mod, less #[cfg]s
* Add qemu initrd config
* Add qemu monitor tcp
* Add not enough ip filters message
* Fix wrong must_use
* Prevent possible infinite loop in block decoding in debug mode
* Clippy
* fix CI?
* Revert, keep libipt 0.3 and hw bp
---------
Co-authored-by: Romain Malmain <romain.malmain@pm.me>
Co-authored-by: Marco Cavenati <marco@lenovo300e>
* feat: unicorn support
* feat: update
* fix: remove unused files
* fix: clean
* fix: remove undeeded parameters
* fix: typo
* moved to justfile
* use log::debug!
* fix cargo and created justfile
* feat: add CI
* add runs on
* fix: CI
* fix: CI
* fix: don't use fork executor
* not needed anymore
* fix: CI
* fix: CI
* remove extra space
* Fixing the test_harness library name
* Fasan works, but testing of all features is pending
* Tests pass, before fixing clippy and fmt
* CLippy+fmt
* CLippy+fmt+tests running on linux
* Clippy
* Not stalkering the fuzzer. In the correct way
* Removing the instrumentation upon crash. Proper hooking of UnmapViewOfFile
* Fixes after the merge from the upstream (before 0.15.0). Still need to add the observer, clippy, fmt, and at least linux compilation
* Adding the helper observer and using it in the test
* Removing the observer from the wrong location
* Adapting to the new helper ownership model
* Adding an observer to shut down instrumentation upon crash
* Clippy + fmt
* Using mimalloc everywhere
* Deactivating before activating with the harness. Otherwise, gets stuck on Linux.
* Fixing imports for windows
* Using the new way of passing the handler
* Using frida_helper_shutdown_observer
* Clippy+fmt
* no-std, clippy
* Fmt
* Stable thread_id
* Clippy 18
* More clippy
* Formatting toml
* Fixing apples
* Fixing apples 2
* Fixing apples 3
* Upping to 0.16.7 (necessary for Windows)
* Clippy+fmt
* Enabling the allocator test after the fix and clarifying the importantce of the static runtime linking.
* Moving has_tls to bolts
* Proper handling of no-std, hopefully
* Another attempt to fix win no-std
* Not mine clippy complaint...
* Not mine clippy complaint #2...
* Dlmalloc not used, removing from dependencies
* Restoring target in config.toml (otherwise fails CI on Linux)
* lots of digging around, pray for us
* fixup?
* Revert "lots of digging around, pray for us"
This reverts commit 706c27201918e906e3401cd0d9e76546f889d1f5.
* Revert "fixup?"
This reverts commit 1d7c5d4fb5b1bd31f5e0c07492aa8ed64c6822f3.
* Revert artifact
* Revert fixups
* Removing unused
* Reverting to upstream/main
---------
Co-authored-by: Addison Crump <addison.crump@cispa.de>
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
* just port for binary only / systemmode fuzzers
* introduce just libraries, with pre-initialized variables and common recipes
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
* move to just
* fuzzbench
* shell check
* version
* rme
* fixer
* fixing
* libpng friends
* pwd
* ps
* ps
* no fail fast.. for now
* windows
* l
* no powershell
* a
* fk
* fixer
* a
* Revert "fixer"
This reverts commit 76ae72d68686ead01ef914b658c5d8dac5aaee32.
* plzplz
* aaaa
* aa
* aa
* use absolute path, use LIBAFL_CC and LIBAFL_CXX
* why tabs????
* this job is not fun
* aa
* tmate debug
* disable cacheing
* del
* deldelg
* rename
* aaaa
* lol
* aaa
* lol
* lol
* 2nd tmate ...
* a
* lol
* lll
* shell ck
* please i'm about to cry
---------
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Romain Malmain <romain.malmain@pm.me>
* move to just
* fuzzbench
* shell check
* version
* rme
* fixer
* fixing
* libpng friends
* pwd
* ps
* ps
* no fail fast.. for now
* windows
* l
* no powershell
* a
* fk
* fixer
* a
* Revert "fixer"
This reverts commit 76ae72d68686ead01ef914b658c5d8dac5aaee32.
* plzplz
---------
Co-authored-by: Your Name <you@example.com>
* testcase name logic
* implement locking
* implement logic for removing testcase
* minor modifications
* minor modifications to remove_testcase()
* extract generate_name() from trait Input (broken)
* Revert "extract generate_name() from trait Input (broken)"
This reverts commit 9e217be2810a8c33970846cdd380f542975cc05b.
* fix ci errors
* remove CorpusId from generate_name() calls
* toml formatting
* write from file instead of fs
* fmt and clippy
* fix windows clippy
* handle renaming of testcase
* fix failing cmplog test
* overwrite lockfile on remove testcase
* format
* bring back corpus id in generate_name
* missed windows executors hook
* fix failing tests
* some more errors
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
* Make sure EM and Z remain consistent in InProcessExecutor
* first make them compile
* a
* hah
* fix intel pt
* decouple fuzzer from em
* lol
* 3
* fix tcp
* fix
* fix
* fix
* fixer
* std
* fixer
* plz
* plzplzplz
* plzplzplzplz
* mm
* more
* symbol
* a
* a
* mm
* mmm
* mmmm
* mmmmm
* ff
---------
Co-authored-by: Toka <tokazerkje@outlook.com>
* Frida updates and FASAN fixes
* fmt
* Fixes
* clippy
* fmt
* Clippy
* Update to frida 0.16.2
* fix windows hooks
* Fix
* Fmt
* windows fix
* Bump frida version to 0.16.3
* Get rid of call to LLVMFuzzerInitialize
* bump version 0.16.5; use find_global_export_by_name
* allow unused_macro_rules
* Don't do stdout_file on windows
* fmt
* Add tmate to debug
* fix windows frida_libpng
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
* fix drcov path parsing
* refactoring of drcov tool
* add the possibility to sort addresses in drcov tools
* more aggressive clippy. it now catches more warnings as errors than before
* reduce the number of unfixable warnings displayed.