Git Product home page Git Product logo

Comments (3)

robertswiecki avatar robertswiecki commented on May 3, 2024 1

It's only somewhat possible. The coverage dump is performed by the kernel in an asynchronous manner, i.e. we know only that some function (address range) was reached, and we could create a crash, but the crash itself would not be exactly in this function, because the process could be soemwhere else currently.

If this is ok with your plans (i.e. crash the process, but only knowing that it reached some function in the past), we could add sth like that.

Otherwise, maybe you can rewrite the binary, and simply add "int $3" everywhere in the function (instead of regular code). honggfuzz will see it as SIGTRAP, and will dump the crash.

from honggfuzz.

Manouchehri avatar Manouchehri commented on May 3, 2024

@robertswiecki Thanks for your response. =)

That was my first thought too (except with SIGSEGV, totally forgot about SIGTRAP); I thought constantly rewriting the binary might add a lot of overhead though. Do I have to completely shut down honggfuzz or can I get away with modifying the binary live?

from honggfuzz.

robertswiecki avatar robertswiecki commented on May 3, 2024

Inserting int3 is probably easy. What is more, you can probably try to insert a debug register with ptrace - then when the code will reach it, you'll receive SIHTRAP. But you have only 4 debug regs in x86.

from honggfuzz.

Related Issues (20)

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.