Book Image

Hands-On Application Penetration Testing with Burp Suite

By : Carlos A. Lozano, Dhruv Shah, Riyaz Ahemed Walikar
Book Image

Hands-On Application Penetration Testing with Burp Suite

By: Carlos A. Lozano, Dhruv Shah, Riyaz Ahemed Walikar

Overview of this book

Burp suite is a set of graphic tools focused towards penetration testing of web applications. Burp suite is widely used for web penetration testing by many security professionals for performing different web-level security tasks. The book starts by setting up the environment to begin an application penetration test. You will be able to configure the client and apply target whitelisting. You will also learn to setup and configure Android and IOS devices to work with Burp Suite. The book will explain how various features of Burp Suite can be used to detect various vulnerabilities as part of an application penetration test. Once detection is completed and the vulnerability is confirmed, you will be able to exploit a detected vulnerability using Burp Suite. The book will also covers advanced concepts like writing extensions and macros for Burp suite. Finally, you will discover various steps that are taken to identify the target, discover weaknesses in the authentication mechanism, and finally break the authentication implementation to gain access to the administrative console of the application. By the end of this book, you will be able to effectively perform end-to-end penetration testing with Burp Suite.
Table of Contents (19 chapters)
Title Page
Copyright and Credits
Contributors
About Packt
Preface
12
Exploiting and Exfiltrating Data from a Large Shipping Corporation
Index

Extracting server files using XXE vulnerabilities


XXE is a vulnerability that affects an application that parses XML and made a mistaking when parsing an XML that has reference to an XXE.

Exploiting the vulnerability

Imagine we have an application susceptible to an XXE vulnerability, where we have a vulnerable request as shown in the following screenshot:

Here, the xmlparameter is vulnerable to an XXE and the header, as shown in the following block:

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 

It means that this is a request that is accepting XML as the input. So, we will modify the input using the Burp Suite's Proxy, to see if the application is accepting our testing string. To do this, we are going to use the following input:

<!DOCTYPE foo [ <!ELEMENT  ANY> <!ENTITY bar "cosa">  <!ENTITY barxee "&amp;bar; XEE" > ]> <foo> &amp;barxee; </foo> 

If it's accepted, the application will show the message that we are passing in the...