Vulnhuntr is a Python tool that uses LLMs and static analysis to identify remotely exploitable vulnerabilities starting from user input and tracing to server output. It supports Python codebases and a limited set of vulnerability classes.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
Vulnhuntr is a tool to identify remotely exploitable vulnerabilities using LLMs and static code analysis. It analyzes code call chains from remote user input to server output to detect vulnerabilities.
How it works
- LLM summarizes the repository context and assists in analyzing code sections.
- It analyzes an entire file first, then uses vulnerability-specific prompts for deeper analysis.
- The analysis iterates to collect context from other files until the call chain is fully traced, producing a final report with reasoning, PoC exploit, and confidence score.
Getting started
Install methods include Docker, pipx, or direct from source:
- Docker:
docker build -t vulnhuntr https://github.com/protectai/vulnhuntr.git#main
- Pipx:
pipx install git+https://github.com/protectai/vulnhuntr.git --python python3.10
- From source with poetry:
git clone https://github.com/protectai/vulnhuntr
cd vulnhuntr && poetry install
Usage requires an API key and the path to a GitHub repository, with an optional custom LLM endpoint. Example commands illustrate using Claude or GPT as the LLM:
export ANTHROPIC_API_KEY="sk-1234"
vulnhuntr -r /path/to/target/repo/
export OPENAI_API_KEY="sk-1234"
vulnhuntr -r /path/to/target/repo/ -a server.py -l gpt
docker run --rm -e ANTHROPIC_API_KEY=sk-1234 -e ANTHROPIC_BASE_URL=https://localhost:1234/api -v /local/path/to/target/repo:/repo vulnhuntr:latest -r /repo -a repo-subfolder/target-file.py
Recent releases
- No releases listed (latest 0).
Traction
- Stars: 2725
Behind the repo
- License: AGPL-3.0
- Language: Python
- Created: 2024-10-15
- Last push: 2025-02-06
- Topics: ai, llm, security, static-analysis, vulnerability-detection
Caveats
- Compatibility note: Vulnhuntr strictly requires Python 3.10 because of Jedi parsing issues.
- Supported scope: Only Python codebases are supported.
- Supported vulnerability classes: Local file include (LFI), Arbitrary file overwrite (AFO), Remote code execution (RCE), Cross site scripting (XSS), SQL Injection (SQLI), Server side request forgery (SSRF), Insecure Direct Object Reference (IDOR).
- Open issues: 18






