jspanda: client-side prototype pollution vulnerability scanner
JSPanda
JSpanda is a client-side prototype pollution vulnerability scanner. It has two key features, scanning vulnerability the supplied URLs and analyzing the JavaScript libraries’ source code.
However, JSpanda cannot detect advanced prototype pollution vulnerabilities.
How JSPanda works?
- Uses multiple payloads for prototype pollution vulnerability.
- Gathers all the links in the targets for scanning and adds payloads to JSpanda-obtained URLs, navigates to each URL with headless Chromedriver.
- Scans all words in the source code of a potentially vulnerable JavaScript library and it creates a simple JS PoC by finding the script gadget, helping you analyze the code manually.
Install
Requirements
- Download the latest version of Google Chrome and Chromedriver
- Selenium
Download
git clone https://github.com/RedSection/jspanda.git
Usage
Scan: python3.7 jspanda.py
- Add URLs to url.txt file, for instance : example.com
Basic Source Code Analysis: python3.7 analyze.py
- Add a JavaScript library’s source code to analyze.js
- Generate PoC code using analyze.py
- Execute PoC code on Chrome’s console. It pollutes all the words collected from the source code and shows them on the screen. So it may generate false-positive results. These outputs provide additional information to researchers, do not automate everything.
Source: https://github.com/RedSection/