How to reproduce defects with Mayhem

Welcome to our Mayhem Tips and Tricks series! Our goal is to help you learn about the best features of Mayhem in small bite-size chunks. Today, we will explain how you can quickly and easily reproduce defects identified by Mayhem.

Once a defect has been identified within your codebase, developers and pentesters will need some way to reproduce the defect so they can analyze it themselves and apply a fix. Fortunately, Mayhem produces a proof-of-vulnerability, which is a succinct way of saying that Mayhem generates payloads that can be used to reproduce a bug. Let’s look at how you can obtain the proof-of-vulnerability and the command you need to run to reproduce the findings.

Say for example that you’re fuzzing lighttpd, an open source web server. After some amount of time, Mayhem has found multiple defects. How do you reproduce these defects for debugging and remediation?

On the run status page, you can see that our lighttpd run has found eight defects. At the bottom of the page, you can see more details and an example test case link.

Reproducing Defects with Mayhem.jpg\ 578x550
Clicking on the example test case link will show the steps to reproduce.

Reproducing Defects.jpg\ 561x250
As you can see, Mayhem provides on-screen instructions for reproducing the defect. Following these instructions, developers and pen testers can use external tools such as a debugger to determine the root cause of the defect and then create a fix.

Not only does Mayhem find defects in your codebase, it also shows you how to reproduce them.

We hope that you found this Tips and Tricks article helpful.