Git Product home page Git Product logo

driller-afl's Introduction

Driller-AFL

This repository holds some custom changes to AFL which hope to optimize AFL's performance on CGC binaries. These changes are minimal, and some changes just affect where certain components of AFL are installed.

Changes

  • Introduce an overflow-byte, should increase the max size of the logarthmic hit count buckets used by AFL. For example, where vanilla AFL will only be interested in branch hit counts of 1, 2, 4, 8, ... up to 256, now our max is 65536.
  • Install QEMU tracer into <base_dir>/tracers/i386/afl-qemu-tracer, this is to increase the flexibilty of the Fuzzer project.
  • Handle the reception of a SIGUSR1 signal, which QEMU will raise if it detects a raw leak of the flag page. QEMU will only raise this signal if it sees any 4 contiguous bytes in the flag page mirrored in a buffer being transmitted.

driller-afl's People

Contributors

jacopo avatar nickstephens avatar owlz avatar rhelmot avatar zardus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

driller-afl's Issues

AFL_PATH problem

I couldn't run "make install" on this repository. So I should run "make" command and set AFL_PATH variable. But after that I get the below error still:
image
The afl-qemu-trace file generated after run the build_qemu_support.sh, but according to the 7230 line in the afl-fuzz.c it isn't there in $AFL_PATH/afl-qemu-trace and it is there in $AFL_PATH/tracers/i386/afl-qemu-trace. So I copy that manually to $AFL_PATH directory and problem was solved.
I publish this issue because I think this is a problem and you should change the afl-qemu-trace location. because the original value of $AFL_PATH is the location of afl-fuzz and as.
Thank you.

What is the meaning of driller_path

Hi, guys
When running the driller-afl(afl-cgc), it puzzles me very much that what parameter should I set for the varialbe driller_path, which means the the location of driller executable. Is that the run.py in the driller module?
And there is not a '-D' paremeter in "_start_afl_instance" function, to start an AFL instance, which belongs to Class Fuzzer in the Fuzzer module. That's so odd!
Can you give some information about this question? Thank you very much!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.