Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
kleiton0x00 authored Aug 31, 2021
1 parent 771566d commit 4995193
Showing 1 changed file with 13 additions and 21 deletions.
34 changes: 13 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,45 +2,37 @@
A simple scanner/exploitation tool written in GO which automatically exploits known and existing gadgets (checks for specific variables in the global context) to perform XSS via Prototype Pollution. NOTE: The program only exploits known gadgets, but does not cover code analysis or any advanced Prototype Pollution exploitation, which may include custom gadgets.

## Requirements
Make sure to have Chromium/Chrome installed:
```
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt-get update
sudo apt-get install google-chrome-stable
```
Make sure to have Chromium installed (Chrome will also do the job):
```sudo apt-get install chromium```

Make sure to have [chromedp](https://github.com/chromedp/chromedp) installed:
```go get -u github.com/chromedp/chromedp```

## Installation
- Automatically
- The recommended way to install the software is to compile it yourself by executing:
```go get -u github.com/kleiton0x00/ppmap.git```
Check if it is successfuly compiled by typing in the terminal: ```ppmap```

- If you face error during manually compiling (for some reasons), you can download the precompiled one:
- Download the already compiled binary [here](https://github.com/kleiton0x00/ppmap/releases)
- Give it the permission to execute ```chmod +x ppmap```

- Manually (compile it yourself)
- Clone the project:
```git clone https://github.com/kleiton0x00/ppmap.git```
- Change directory to ppmap folder:
```cd ~/ppmap```
- Build the binary
```go build ppmap.go```

## Usage

Using the program is very simple, you can either:
- scan a directory/file (or even just the website itself):
```echo 'https://target.com' | ./ppmap```
```echo 'https://target.com' | ppmap```

- or endpoint:
```echo 'http://target.com/something/?page=home' | ./ppmap```
```echo 'http://target.com/something/?page=home' | ppmap```

For mass scanning:
``` cat url.txt | ./ppmap``` where **url.txt** contains all url(s) in column.
``` cat url.txt | ppmap``` where **url.txt** contains all url(s) in column.

## Demo
![](https://i.imgur.com/05nvfwX.gif)

Feel free to test the tool on the following websites as a part of demonstration:
Feel free to test the tool on the following websites as a part of demonstration and to also check if the software is working correctly:
https://msrkp.github.io/pp/2.html
https://ctf.nikitastupin.com/pp/known.html
https://grey-acoustics.surge.sh
Expand All @@ -49,7 +41,7 @@ https://grey-acoustics.surge.sh

- Identify if the website is vulnerable to Prototype Pollution by heuristic scan
- Fingerprint the known gadgets (checks for specific variables in the global context)
- Display the final exploit & ready to perform XSS
- Display the final XSS payload which can be exploited

## Credits

Expand Down

0 comments on commit 4995193

Please sign in to comment.