Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
JSAnalyzer | Kitploit
Tools/GitHubGitHub/jenish-sojitra/jsanalyzer
Static AnalysisInformation GatheringWeb SecurityPenetration TestingSecret DetectionEmail HarvestingAPI Security
GitHubjenish-sojitra/jsanalyzer

JSAnalyzer

View Repository
1.2k1826 months agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

JS Analyzer - Burp Suite Extension by Jensec (https://x.com/_jensec)

A powerful Burp Suite extension for JavaScript static analysis. Extracts API endpoints, URLs, secrets, and email addresses from JavaScript files with intelligent noise filtering. The goal is reduce noise as much as possible to ensure the accuracy

Burp Suite Python License

Features

  • Endpoint Detection - Finds API paths, REST endpoints, OAuth URLs, admin routes
  • URL Extraction - Extracts full URLs including cloud storage (AWS S3, Azure, GCP)
  • Secret Scanning - Detects API keys, tokens, credentials (AWS, Stripe, GitHub, Slack, JWT, etc.)
  • Email Extraction - Finds email addresses in JS code
  • File Detection - Detects references to sensitive files (.sql, .csv, .bak, .env, .pdf, etc.)
  • Smart Filtering - Removes noise from XML namespaces, module imports, build artifacts
  • Source Tracking - Shows which JS file each finding came from
  • Live Search - Filter results in real-time
  • Copy Function - Copy individual or all findings to clipboard
  • JSON Export - Export all findings to JSON file

Installation

  1. Download Jython standalone JAR
  2. In Burp Suite: Extensions > Extensions-Settings > Python Environment
  3. Set the Jython JAR path
  4. Extensions > Installed > Add
  5. Select Python and browse to js_analyzer.py

Usage

  1. Browse websites with your browser proxied through Burp Suite
  2. Right-click on any raw(s) containing JS response in (either of following tabs):
    • Proxy > HTTP history
    • Target > Site map
    • Repeater
  3. Select "Analyze JS with JS Analyzer"
  4. Check the JS Analyzer tab for results

You can select multiple requests from HTTP history or Dashboard and send it all together to JS Analayzer.

What It Detects

Endpoints

Secrets

#Note: Feel free to fork and add more secrets detections as required.

Noise Filtering

The extension automatically filters out:

  • XML namespaces (schemas.openxmlformats.org, www.w3.org)
  • Module imports (./, ../, @angular/, etc.)
  • PDF internal paths (/Type, /Font, /Filter)
  • Excel/XML paths (xl/, docProps/, worksheets/)
  • Locale files (en.js, fr-ca.js)
  • Crypto library internals (sha.js, aes, )

Files

Detects references to sensitive file types:

Standalone Engine

For use in your own Python projects or APIs:

root@kitploit:~
from js_analyzer_engine import JSAnalyzerEngine

engine = JSAnalyzerEngine()
results = engine.analyze(javascript_content)

print(results["endpoints"])  # ['/api/v1/users', ...]
print(results["urls"])       # ['https://api.example.com', ...]
print(results["secrets"])    # [{'type': 'AWS Key', 'value': '...', 'masked': '...'}, ...]
print(results["emails"])     # ['[email protected]', ...]

Flask API Example

root@kitploit:~
from flask import Flask, request, jsonify
from js_analyzer_engine import JSAnalyzerEngine

app = Flask(__name__)
engine = JSAnalyzerEngine()

@app.route('/analyze', methods=['POST'])
def analyze():
    content = request.json.get('content', '')
    results = engine.analyze(content)
    return jsonify(results)

if __name__ == '__main__':
    app.run(port=5000)

File Structure

root@kitploit:~
JSextension/
├── js_analyzer.py          # Main Burp extension entry point
├── ui/
│   ├── __init__.py
│   └── results_panel.py    # Burp UI panel
├── README.md
└── LICENSE

Contributing

Contributions are welcome! Feel free to:

  • Add new secret patterns
  • Improve noise filtering
  • Add new endpoint patterns
  • Report bugs or issues

License

MIT License - see LICENSE file.

Credits

Inspired by:

  • LinkFinder - Endpoint detection regex
  • TruffleHog - Secret patterns

Author

Jenish Sojitra (https://x.com/_jensec)

Created with ❤️ for the InfoSec and Tech community.

Download Tool
PatternExample
API paths/api/v1/users, /api/v2/auth
REST endpoints/rest/data, /graphql
OAuth/Auth/oauth2/token, /auth/login, /callback
Admin routes/admin, /dashboard, /internal
Well-known/.well-known/openid-configuration
TypePattern
AWS Access KeyAKIA[0-9A-Z]{16}
Google API KeyAIza[0-9A-Za-z\-_]{35}
Stripe Live Keysk_live_[0-9a-zA-Z]{24,}
GitHub PATghp_[0-9a-zA-Z]{36}
Slack Tokenxox[baprs]-...
JWTeyJ...
Private Keys-----BEGIN PRIVATE KEY-----
Database URLsmongodb://, postgres://, mysql://
bn.js
CategoryExtensions
Data.sql, .csv, .xlsx, .json, .xml, .yaml
Config.env, .conf, .ini, .cfg, .config
Backup.bak, .backup, .old, .orig
Certs.key, .pem, .crt, .p12, .pfx
Docs.pdf, .doc, .docx
Archives.zip, .tar, .gz
Scripts.sh, .bat, .ps1, .py