diff options
-rw-r--r-- | docs/Changelog.md | 2 | ||||
-rw-r--r-- | include/cmplog.h | 13 |
2 files changed, 10 insertions, 5 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md index d33d3121..3f9f0161 100644 --- a/docs/Changelog.md +++ b/docs/Changelog.md @@ -13,6 +13,8 @@ - improved seed selection algorithm - added `AFL_CUSTOM_MUTATOR_LATE_SEND=1` to call the custom send() function after the target has been restarted. + - because of bad math and undefined behaviour fixes we have to change + the CMPLOG map. **YOU NEED TO RECOMPILE CMPLOG TARGETS** - frida_mode: - AFL_FRIDA_PERSISTENT_ADDR can now be be any reachable address not just a function entry diff --git a/include/cmplog.h b/include/cmplog.h index a4449a60..9f995da6 100644 --- a/include/cmplog.h +++ b/include/cmplog.h @@ -53,21 +53,24 @@ struct cmp_header { // 16 bit = 2 bytes struct cmp_operands { u64 v0; - u64 v1; u64 v0_128; + u64 v0_256_0; // u256 is unsupported by any compiler for now, so future use + u64 v0_256_1; + u64 v1; u64 v1_128; - u64 unused; - u8 unused1; - u8 unused2; + u64 v1_256_0; + u64 v1_256_1; + u8 unused[8]; } __attribute__((packed)); struct cmpfn_operands { u8 v0[32]; - u8 v0_len; u8 v1[32]; + u8 v0_len; u8 v1_len; + u8 unused[6]; } __attribute__((packed)); |