1. QInst: , |
, eBPF ELF-. , , , (, , !!!). QEMU. - , . so- + .o- eBPF. eBPF- QEMU .
( ) :
#include
extern uint8_t *__afl_area_ptr;
extern uint64_t prev;
void inst_qemu_brcond_i64(uint64_t tag, uint64_t x, uint64_t y, uint64_t z, uint64_t u)
{
__afl_area_ptr[((prev >> 1) ^ tag) & 0xFFFF] += 1;
prev = tag;
}
void inst_qemu_brcond_i32(uint64_t tag, uint64_t x, uint64_t y, uint64_t z, uint64_t u)
{
__afl_area_ptr[((prev >> 1) ^ tag) & 0xFFFF] += 1;
prev = tag;
}
, . , , .
https://habr.com/ru/post/452608/?utm_source=habrahabr&utm_medium=rss&utm_campaign=452608