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)

Chapter 7

  1. An example misconfiguration for an XML parser susceptible to XXE in PHP is not having the libxml_disable_entity_loader variable set to true to prevent entity expansion.
  2. Using the Burp Proxy Intercept feature is key to submitting XML injection snippets.
  3. XXE vulnerabilities can allow for an attacker to expose sensitive files on the server, DoS the application, or sometimes get RCE.
  4. /dev/random is a special system location that acts as pseudorandom number generator.
  1. Testing for XXE using simple entity subsitution is an easy, lightweight way of validating XXE bugs.
  2. The "Billion Laughs" attack is not unique to XML; it is the use of nested entities to consume exponential memory and DoS the parsing service.
  3. Even though some services explicitly use JSON for passing data, their underlying servers often have the capacity to use different data formats. Sometimes, doing...