diff options
| -rw-r--r-- | README.md | 2 | ||||
| -rw-r--r-- | REUSE.toml | 1 | ||||
| -rw-r--r-- | loftix/fuzzing.scm | 100 | ||||
| -rw-r--r-- | patches/evocatio-argv-fuzz-amd64-only.patch | 30 |
4 files changed, 0 insertions, 133 deletions
diff --git a/README.md b/README.md index 6d36a61..ba544f5 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,6 @@ Then run `guix pull`. ### Fuzzing - [afl-dyninst]: [Dyninst] integration for [AFL++] -- [evocatio]: Bug analyzer for bug capability discovery - [fuzzolic]: Concolic fuzzer ### Patching @@ -45,7 +44,6 @@ Then run `guix pull`. [afl-dyninst]: https://trong.loang.net/~cnx/afl-dyninst/about [Dyninst]: https://github.com/dyninst/dyninst [AFL++]: https://aflplus.plus -[evocatio]: https://github.com/HexHive/Evocatio [fuzzolic]: https://season-lab.github.io/fuzzolic [e9patch]: https://github.com/GJDuck/e9patch [python-pacfix]: https://github.com/hsh814/pacfix-python diff --git a/REUSE.toml b/REUSE.toml index dd7cd6f..ed41662 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -165,7 +165,6 @@ SPDX-License-Identifier = 'CC0-1.0' [[annotations]] path = [ 'patches/afl++-*.patch', 'patches/e9patch-*.patch', - 'patches/evocatio-*.patch', 'patches/fuzzy-sat-*.patch', 'patches/fuzzolic-install.patch', 'patches/fuzzolic-python-package.patch', diff --git a/loftix/fuzzing.scm b/loftix/fuzzing.scm index ccbe247..b656f01 100644 --- a/loftix/fuzzing.scm +++ b/loftix/fuzzing.scm @@ -76,106 +76,6 @@ (home-page "https://trong.loang.net/~cnx/afl-dyninst") (license (list license:agpl3+ license:asl2.0)))) -(define-public evocatio - (let ((commit "fc8f6dc5bbdf5f49cf1231e746a7944efa09dcc7") - (revision "0")) - (package - (inherit aflplusplus) - (name "evocatio") - (version (git-version "3.15a" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/HexHive/Evocatio") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "16kc2xa4dk9lq1sg7sl5489n7r3p8kc6hmfgy0gh7i1n6h269bry")) - (patches - (search-patches - "patches/evocatio-argv-fuzz-amd64-only.patch")))) - (arguments - (substitute-keyword-arguments (package-arguments aflplusplus) - ((#:make-flags make-flags) - #~(cons* "-C" "bug-severity-AFLplusplus" - "CFLAGS=-O2 -g -fcommon" - "NO_SPLICING=1" - #$make-flags)) - ((#:build-target _) "source-only") - ((#:modules modules %default-gnu-modules) - `((ice-9 string-fun) ,@modules)) - ((#:phases phases) - #~(modify-phases #$phases - (replace 'patch-gcc-path - (lambda* (#:key inputs #:allow-other-keys) - ;; AFL++ is prefixed with bug-severity-AFLplusplus - (substitute* "bug-severity-AFLplusplus/src/afl-cc.c" - (("alt_cc = \"gcc\";") - (format #f "alt_cc = \"~a\";" - (search-input-file inputs "bin/gcc"))) - (("alt_cxx = \"g\\+\\+\";") - (format #f "alt_cxx = \"~a\";" - (search-input-file inputs "bin/g++")))))) - (add-after 'build 'build-argv-fuzzing - (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke - "make" "-C" "bug-severity-AFLplusplus/utils/argv_fuzzing" - (cdddr make-flags)))) - (add-after 'install 'install-argv-fuzzing - (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke - "make" "-C" "bug-severity-AFLplusplus/utils/argv_fuzzing" - "install" (cdddr make-flags)))) - (add-after 'install 'install-scripts - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") - "/bin"))) - (for-each - (lambda (script) - (let ((file (string-append - bin "/evocatio-" - (string-replace-substring script - "_" "-")))) - (copy-file (string-append "scripts/" script ".py") - file) - (chmod file #o755))) - '("calculate_severity_score" - "gen_raw_data_for_cve"))))))))) - (home-page "https://github.com/HexHive/Evocatio") - (description - "Evocatio is a bug analyzer built on top of AFL++ and AddressSanitizer. -It automatically discovers a bug's capabilities: analyzing a crashing test case -(i.e., an input exposing a bug) to understand the full extent -of how an attacker can exploit a bug. - -Evocatio leverages a capability-guided fuzzer to efficiently uncover -new bug capabilities (rather than only generating a single crashing test case -for a given bug, as a traditional greybox fuzzer does).")))) - -(define (for-evocatio base) - (package - (inherit base) - (name (string-append (package-name base) "-for-evocatio")) - (arguments - (substitute-keyword-arguments (package-arguments base) - ((#:configure-flags flags #~'()) - #~(cons (string-append "CC=" #$evocatio "/bin/afl-cc") - #$flags)) - ((#:phases phases #~%standard-phases) - #~(modify-phases #$phases - (add-before 'configure 'set-env - (lambda _ - (setenv "CC" #$(file-append evocatio "/bin/afl-cc")) - (setenv "AFL_USE_ASAN" "1") - (setenv "AFL_USE_UBSAN" "1") - (setenv "ASAN_OPTIONS" "detect_leaks=0"))))) - ((#:tests? _ #f) - #f))) - (native-inputs - (modify-inputs (package-native-inputs base) - (append evocatio))))) - (define-public fuzzolic-showmap (hidden-package (package diff --git a/patches/evocatio-argv-fuzz-amd64-only.patch b/patches/evocatio-argv-fuzz-amd64-only.patch deleted file mode 100644 index 7956f84..0000000 --- a/patches/evocatio-argv-fuzz-amd64-only.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/bug-severity-AFLplusplus/utils/argv_fuzzing/Makefile b/bug-severity-AFLplusplus/utils/argv_fuzzing/Makefile -index 5a0ac6e609c0..20dcb5b9f57b 100644 ---- a/bug-severity-AFLplusplus/utils/argv_fuzzing/Makefile -+++ b/bug-severity-AFLplusplus/utils/argv_fuzzing/Makefile -@@ -16,9 +16,10 @@ - PREFIX ?= /usr/local - BIN_PATH = $(PREFIX)/bin - HELPER_PATH = $(PREFIX)/lib/afl -+INCLUDE_PATH = $(PREFIX)/include/afl - --CFLAGS = -fPIC -Wall -Wextra --LDFLAGS = -shared -+CFLAGS += -fPIC -Wall -Wextra -D__x86_64__ -D__LP64__ -+LDFLAGS += -shared - - UNAME_SAYS_LINUX=$(shell uname | grep -E '^Linux|^GNU' >/dev/null; echo $$?) - UNAME_SAYS_LINUX:sh=uname | grep -E '^Linux|^GNU' >/dev/null; echo $$? -@@ -47,9 +48,10 @@ argvfuzz32.so: argvfuzz.c - -@$(CC) $(M32FLAG) $(CFLAGS) $^ $(LDFLAGS) -o $@ 2>/dev/null || echo "argvfuzz32 build failure (that's fine)" - - argvfuzz64.so: argvfuzz.c -- -@$(CC) $(M64FLAG) $(CFLAGS) $^ $(LDFLAGS) -o $@ 2>/dev/null || echo "argvfuzz64 build failure (that's fine)" -+ $(CC) $(M64FLAG) $(CFLAGS) $^ $(LDFLAGS) -o $@ - --install: argvfuzz32.so argvfuzz64.so -+install: argv-fuzz-inl.h argvfuzz32.so argvfuzz64.so -+ install -Dm 755 argv-fuzz-inl.h $(DESTDIR)$(INCLUDE_PATH)/argv-fuzz-inl.h - install -d -m 755 $(DESTDIR)$(HELPER_PATH)/ - if [ -f argvfuzz32.so ]; then set -e; install -m 755 argvfuzz32.so $(DESTDIR)$(HELPER_PATH)/; fi - if [ -f argvfuzz64.so ]; then set -e; install -m 755 argvfuzz64.so $(DESTDIR)$(HELPER_PATH)/; fi |
