Book Image

Mastering Modern Web Penetration Testing

By : Prakhar Prasad, Rafay Baloch
Book Image

Mastering Modern Web Penetration Testing

By: Prakhar Prasad, Rafay Baloch

Overview of this book

Web penetration testing is a growing, fast-moving, and absolutely critical field in information security. This book executes modern web application attacks and utilises cutting-edge hacking techniques with an enhanced knowledge of web application security. We will cover web hacking techniques so you can explore the attack vectors during penetration tests. The book encompasses the latest technologies such as OAuth 2.0, Web API testing methodologies and XML vectors used by hackers. Some lesser discussed attack vectors such as RPO (relative path overwrite), DOM clobbering, PHP Object Injection and etc. has been covered in this book. We'll explain various old school techniques in depth such as XSS, CSRF, SQL Injection through the ever-dependable SQLMap and reconnaissance. Websites nowadays provide APIs to allow integration with third party applications, thereby exposing a lot of attack surface, we cover testing of these APIs using real-life examples. This pragmatic guide will be a great benefit and will help you prepare fully secure applications.
Table of Contents (18 chapters)
Mastering Modern Web Penetration Testing
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Basic methodology to test developer APIs


This methodology can be used to test any developer API. One needs to go through the following steps in order to successfully test the given API. The steps are as follows:

  • Listing endpoints

  • Firing different request methods

  • Exploiting bugs

Listing endpoints

One needs to list the endpoints which are to be examined. For example, if you are testing the Graph API and you are targeting the photos endpoint, you need to list all relevant endpoints that supplement the photos endpoint. This includes studying the photo endpoint and finding out all related functionalities, such as posting a photo, updating a photo, or deleting a photo. Also, you need to learn the difference between posting a photo on a page and on a user profile. Take notes as follows:

GET /v2.6/{photo-id}
POST /v2.6/{page-id}/photos
POST /v2.6/{user-id}/photos
DELETE /v2.6/{photo-id}

Now we are clearer with our understanding of API and ready to test these mentioned endpoints.

Firing different request...