From 0b228fb0f5b4f21816827328a30d1535759c1b79 Mon Sep 17 00:00:00 2001 From: vanhauser-thc Date: Mon, 2 May 2022 08:17:06 +0200 Subject: fix token usage in normal and MOpt mode --- docs/Changelog.md | 3 +++ 1 file changed, 3 insertions(+) (limited to 'docs/Changelog.md') diff --git a/docs/Changelog.md b/docs/Changelog.md index a841cca3..7abe6743 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -12,6 +12,9 @@ sending a mail to . - fix */build_...sh scripts to work outside of git - new custom_mutator: libafl with token fuzzing :) - afl-fuzz: + - AFL never implemented auto token inserts (but user token inserts, + user token overwrite and auto token overwrite), added now! + - Mopt fix to always select the correct algorithm - when you just want to compile once and set CMPLOG, then just set -c 0 to tell afl-fuzz that the fuzzing binary is also for CMPLOG. -- cgit 1.4.1 From 13e0fd3e1a3767c52bc4243e2132f0fd32579eed Mon Sep 17 00:00:00 2001 From: vanhauser-thc Date: Tue, 3 May 2022 13:01:48 +0200 Subject: pcguard fix for most current llvm 15 changes --- docs/Changelog.md | 1 + instrumentation/SanitizerCoveragePCGUARD.so.cc | 24 ++++++++++++++++++------ 2 files changed, 19 insertions(+), 6 deletions(-) (limited to 'docs/Changelog.md') diff --git a/docs/Changelog.md b/docs/Changelog.md index 7abe6743..3d6fbe7e 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -33,6 +33,7 @@ sending a mail to . - afl-cc: - converted all passed to use the new llvm pass manager for llvm 11+ - AFL++ PCGUARD mode is not available for 10.0.1 anymore (11+ only) + - trying to stay on top on all these #$&ยง!! changes in llvm 15 ... - frida_mode: - update to new frida release, handles now c++ throw/catch - unicorn_mode: diff --git a/instrumentation/SanitizerCoveragePCGUARD.so.cc b/instrumentation/SanitizerCoveragePCGUARD.so.cc index f80b1a1e..408353b3 100644 --- a/instrumentation/SanitizerCoveragePCGUARD.so.cc +++ b/instrumentation/SanitizerCoveragePCGUARD.so.cc @@ -313,13 +313,25 @@ PreservedAnalyses ModuleSanitizerCoverageAFL::run(Module & M, std::pair ModuleSanitizerCoverageAFL::CreateSecStartEnd( Module &M, const char *Section, Type *Ty) { - GlobalVariable *SecStart = new GlobalVariable( - M, Ty->getPointerElementType(), false, - GlobalVariable::ExternalWeakLinkage, nullptr, getSectionStart(Section)); + GlobalVariable *SecStart = + new GlobalVariable(M, +#if LLVM_VERSION_MAJOR >= 15 + Ty, +#else + Ty->getPointerElementType(), +#endif + false, GlobalVariable::ExternalWeakLinkage, nullptr, + getSectionStart(Section)); SecStart->setVisibility(GlobalValue::HiddenVisibility); - GlobalVariable *SecEnd = new GlobalVariable( - M, Ty->getPointerElementType(), false, - GlobalVariable::ExternalWeakLinkage, nullptr, getSectionEnd(Section)); + GlobalVariable *SecEnd = + new GlobalVariable(M, +#if LLVM_VERSION_MAJOR >= 15 + Ty, +#else + Ty->getPointerElementType(), +#endif + false, GlobalVariable::ExternalWeakLinkage, nullptr, + getSectionEnd(Section)); SecEnd->setVisibility(GlobalValue::HiddenVisibility); IRBuilder<> IRB(M.getContext()); if (!TargetTriple.isOSBinFormatCOFF()) -- cgit 1.4.1 From 82c6c8e5634e29021893ddb8f3e0f0afb7e31735 Mon Sep 17 00:00:00 2001 From: vanhauser-thc Date: Tue, 10 May 2022 12:18:34 +0200 Subject: update changelog --- docs/Changelog.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'docs/Changelog.md') diff --git a/docs/Changelog.md b/docs/Changelog.md index 3d6fbe7e..b6271a22 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -12,9 +12,6 @@ sending a mail to . - fix */build_...sh scripts to work outside of git - new custom_mutator: libafl with token fuzzing :) - afl-fuzz: - - AFL never implemented auto token inserts (but user token inserts, - user token overwrite and auto token overwrite), added now! - - Mopt fix to always select the correct algorithm - when you just want to compile once and set CMPLOG, then just set -c 0 to tell afl-fuzz that the fuzzing binary is also for CMPLOG. @@ -29,6 +26,11 @@ sending a mail to . - "saved timeouts" was wrong information, timeouts are still thrown away by default even if they have new coverage (hangs are always kept), unless AFL_KEEP_TIMEOUTS are set + - AFL never implemented auto token inserts (but user token inserts, + user token overwrite and auto token overwrite), added now! + - Mopt fix to always select the correct algorithm + - fix effector map calculation (deterministic mode) + - fix custom mutator post_process functionality - document and auto-activate pizza mode on condition - afl-cc: - converted all passed to use the new llvm pass manager for llvm 11+ -- cgit 1.4.1