Software Fuzz Testing

Building a custom fuzzer

Inspired by mutation analysis and coverage-guided fuzzing, I designed and developed a custom fuzzer (using Python) in this project. I built fuzzing harnesses for two target applications and conducted a fuzzer performance study on the targets. The project also allowed exploring important testing techniques such as coverage-guided fuzzing, symbolic execution, and concolic execution.

Check out our github repository for more details!

example image
A high-level overview of the components of the fuzzer and their interactions.
<!--
  See https://www.debugbear.com/blog/responsive-images#w-descriptors-and-the-sizes-attribute and
  https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images for info on defining 'sizes' for responsive images
-->

  <source
    class="responsive-img-srcset"
    
      srcset="/assets/img/fuzzer-design-480.webp 480w,/assets/img/fuzzer-design-800.webp 800w,/assets/img/fuzzer-design-1400.webp 1400w,"
      type="image/webp"
    
    
      sizes="95vw"
    
  >

<img
  src="/assets/img/fuzzer-design.png"
  
    class="img-fluid rounded z-depth-1"
  
  
    width="100%"
  
  
    height="auto"
  
  
  
  
    title="example image"
  
  
  
    loading="lazy"
  
  onerror="this.onerror=null; $('.responsive-img-srcset').remove();"
>

</picture>

</figure>

</div>

</div>

A high level overview of the components of the fuzzer and their interactions.

–>