Compare commits

...

12 Commits
v4.21c ... 1585

Author SHA1 Message Date
ecf86b175d Merge pull request #1590 from AFLplusplus/dev
Dev
2022-11-23 10:28:33 +01:00
f7b0c8b34e Merge pull request #1585 from SanWieb/cmplog_improvement_stable
CmpLog Taint Mapping + Cache tryout
2022-11-19 12:14:02 +01:00
4d4768c6f6 Disable CMPLOG_ADDT_OPTIMISATIONS by default 2022-11-18 17:50:39 +01:00
d9d668bba9 Extra comments 2022-11-18 15:45:48 +01:00
12e134f1cd Fix merge conflict error 2022-10-21 16:00:10 +02:00
b64f4ef926 Merge 'stable' into cmplog_improvement_stable 2022-10-21 15:54:43 +02:00
d1e1bbc713 Merge pull request #1553 from AFLplusplus/dev
4.05a init
2022-10-12 17:09:49 +02:00
cbfa5207ba Merge pull request #1551 from AFLplusplus/dev
push to stable
2022-10-11 15:40:55 +02:00
7e0171006a Merge pull request #1537 from AFLplusplus/dev
push to stable
2022-09-28 22:56:28 +02:00
ad4b727476 Merge pull request #1527 from AFLplusplus/dev
push to stable
2022-09-20 17:37:20 +02:00
badd9694d2 Merge pull request #1525 from AFLplusplus/dev
push to stable
2022-09-17 11:58:41 +02:00
b6c1e20b6d Merge cleaned Cmplog improvement (#3)
* Add stats information about locations in CMPLOG

* Add CMP Differences Logging

* Improve CMP differences logging

* First sketch

* Fill the taint map

* Fill map working, not filtered yet

* Take smallets hits

* Filtering done

* Add extra optimisations

* Disable optimisations by default

* EXTRA_OPTIMISATIONS

* COURSE_GRAINT

* Disable coarse_taint_map

* Debug cmplog done (#1)

* Disable coarse_taint_map

* Add debug information

* Extra logging

* Add free-taint-map

* Disable logging

* Disable extra optimisations

* Disable extra_optimisations

* New debug

* extra logging

* Extra debug logging

* New debug output

* Debug update

* Remove linked_list taint ref

* Enable fuzzing

* Bug fix

* Enable extra logging

* Debug done, bug fixed

* Debug done, bug fixed (#2)

* Add debug information

* Extra logging

* Add free-taint-map

* Disable logging

* Disable extra optimisations

* Disable extra_optimisations

* New debug

* extra logging

* Extra debug logging

* New debug output

* Debug update

* Remove linked_list taint ref

* Enable fuzzing

* Bug fix

* Enable extra logging

* Debug done, bug fixed

* EXTRA_OPTIMISATIONS

* COURSE_GRAIND

* Bug cause fix

* COURSE GRAIND

* EXTRA_CACHE_TRYOUT

* EXTRA_CACHE FIX

* Remove bool type

* Bug fix; CACHE_TRY

* EXTRA

* IMPR

* COURSEGRAIND

* TRY OUT

* Cleanup
2022-07-22 14:20:59 +02:00
2 changed files with 842 additions and 150 deletions

View File

@ -41,6 +41,11 @@
#define CMP_TYPE_INS 1
#define CMP_TYPE_RTN 2
// #define VARIABLE_VALUE 1
// #define VARIABLE_VALUE_BY_INPUT 2
// #define VARIABLE_INCONSISTENT 3
// #define VARIABLE_INCONSISTENT_BY_INPUT 4
struct cmp_header {
unsigned hits : 24;
@ -49,7 +54,7 @@ struct cmp_header {
unsigned type : 2;
unsigned attribute : 4;
unsigned overflow : 1;
unsigned reserved : 4;
unsigned unchanging : 1;
} __attribute__((packed));
@ -59,6 +64,8 @@ struct cmp_operands {
u64 v1;
u64 v0_128;
u64 v1_128;
// unsigned v0_variable : 2;
// unsigned v1_variable : 2;
} __attribute__((packed));
@ -68,6 +75,8 @@ struct cmpfn_operands {
u8 v0_len;
u8 v1[31];
u8 v1_len;
// unsigned v0_variable : 2;
// unsigned v1_variable : 2;
} __attribute__((packed));
@ -80,6 +89,34 @@ struct cmp_map {
};
/* Compare to taint mapping */
struct taint_logged {
u32 nv0;
u32 nv1;
struct tainted ** v0;
struct tainted ** v1;
};
struct taint_cmp {
u32 key;
struct taint_logged * taint_loggeds;
};
struct taint_mapping{
u32 n;
struct taint_cmp * taint_cmps;
};
/* Cache try out */
struct byte_replacement{
u8 repl_u8_00;
u8 repl_u8_01;
u8 repl_u16_00;
u8 repl_u16_01;
};
/* Execs the child */
struct afl_forkserver;

File diff suppressed because it is too large Load Diff