Book Image

Hands-On Bug Hunting for Penetration Testers

By : Joe Marshall, Himanshu Sharma
Book Image

Hands-On Bug Hunting for Penetration Testers

By: Joe Marshall, Himanshu Sharma

Overview of this book

Bug bounties have quickly become a critical part of the security economy. This book shows you how technical professionals with an interest in security can begin productively—and profitably—participating in bug bounty programs. You will learn about SQli, NoSQLi, XSS, XXE, and other forms of code injection. You’ll see how to create CSRF PoC HTML snippets, how to discover hidden content (and what to do with it once it’s found), and how to create the tools for automated pentesting work?ows. Then, you’ll format all of this information within the context of a bug report that will have the greatest chance of earning you cash. With detailed walkthroughs that cover discovering, testing, and reporting vulnerabilities, this book is ideal for aspiring security professionals. You should come away from this work with the skills you need to not only find the bugs you're looking for, but also the best bug bounty programs to participate in, and how to grow your skills moving forward in freelance security research.
Table of Contents (16 chapters)

XXE – an end-to-end example

Let's set up our XXE lab so that we can see the vulnerability in action. After downloading Vagrant, VirtualBox, and cloning the git repository from https://github.com/jbarone/xxelab, we can start the application by navigating into the xxelab directory and running vagrant up. After downloading the Ubuntu images and other dependencies, your app should be up and running on http://192.168.33.10/:

Let's enter some test values into our submission form, making sure that our Burp Suite proxy has its Intercept feature turned on:

After trying to submit our form, we can head over to Burp to see what our intercepted raw HTTP request looks like:

Seeing that our submission is being formatted in XML, we can try a basic entity expansion test, substituting our email form value with a test message by using the &example; entity:

<?xml version...