Burpference
A research project to add some brrrrrr to Burp
Install / Use
/learn @dreadnode/BurpferenceREADME
burpference
<p align="center"> <img src="https://d1lppblt9t2x15.cloudfront.net/logos/5714928f3cdc09503751580cffbe8d02.png" alt="Logo" align="center" width="144px" height="144px" /> </p> <div align="center">Experimenting with yarrr' Burp Proxy tab going brrrrrrrrrrrrr.
</div>- burpference
"burpference" started as a research idea of offensive agent capabilities and is a fun take on Burp Suite and running inference. The extension is open-source and designed to capture in-scope HTTP requests and responses from Burp's proxy history and ship them to a remote LLM API in JSON format. It's designed with a flexible approach where you can configure custom system prompts, store API keys and select remote hosts from numerous model providers as well as the ability for you to create your own API configuration. The idea is for an LLM to act as an agent in an offensive web application engagement to leverage your skills and surface findings and lingering vulnerabilities. By being able to create your own configuration and model provider allows you to also host models locally via Ollama to prevent potential high inference costs and potential network delays or rate limits.
Some key features:
-
Automated Response Capture: Burp Suite acts as your client monitor, automatically capturing responses that fall within your defined scope. This extension listens for, captures, and processes these details with an offensive-focused agent.
-
API Integration: Once requests and response streams are captured, they are packaged and forwarded to your configured API endpoint in JSON format, including any necessary system-level prompts or authentication tokens.
- Only in-scope items are sent, optimizing resource usage and avoiding unnecessary API calls.
- By default, certain MIME types are excluded.
- Color-coded tabs display
critical/high/medium/low/informationalfindings from your model for easy visualization.
-
Scanner Analysis: A dedicated scanner tab provides focused security analysis capabilities:
- Direct analysis of URLs and OpenAPI specifications
- Load the configuration files using the API adapter, the same as usual in burpference for efficient management of API keys/model selection etc
- Automated extraction of security headers and server information
- Real-time security header assessment (X-Frame-Options, CSP, HSTS, etc.)
- Custom system prompts for specialized analysis scenarios
- Support for both single-endpoint and full domain scanning
- Integration with Burp's native issue reporting system
-
Comprehensive Logging: A logging system allows you to review intercepted responses, API requests sent, and replies received—all clearly displayed for analysis.
- A clean table interface displaying all logs, intercepted responses, API calls, and status codes for comprehensive engagement tracking.
- Stores inference logs in both the "Inference Logger" tab as a live preview and a timestamped file in the /logs directory.
-
Native Burp Reporting: burpference' system prompt invokes the model to make an assessment based on severity level of the finding which is color-coded (a heatmap related to the severity level) in the extenstion tab.
- Additionally, burpference "findings" are created as issues in the Burp Scanner navigation bar available across all tabs in the Burp UI.
-
Flexible Configuration: Customize system prompts, API keys, or remote hosts as needed. Use your own configuration files for seamless integration with your workflow.
- Supports custom configurations, allowing you to load and switch between system prompts, API keys, and remote hosts
- Several examples are provided in the repository, and contributions for additional provider plugins are welcome.
- Supports custom configurations, allowing you to load and switch between system prompts, API keys, and remote hosts
-
Flexible System Prompts: Specialized prompt templates for focused API security testing with some examples:
- Authentication bypass and access control analysis
- Sensitive data exposure and PII leakage detection
- Injection vulnerability assessment across all vectors
- Additional templates can be created for specific testing scenarios
- Dynamic prompt switching during runtime to tailor analysis based on target endpoints
-
Persistent Findings Storage: All security findings are automatically stored and tracked:
- Findings are saved to
logs/findings.jsonin a structured format (example below) - Each finding includes timestamp, severity, details, and affected URLs and persist across Burp Suite sessions
- Findings are synchronized between Scanner and Proxy analysis
[ { "detail": "{u'<FINDING>'model': u'<provider>/<model>'}", "host": "www.evil.io", "name": "burpference: <SEVERITY> Security Finding", "severity": "<SEVERITY>", "timestamp": "2025-02-09T19:35:56.667000", "url": "https://www.evil.io:443/" } ] - Findings are saved to
Prerequisites
Before using Burpference, ensure you have the following:
- Due to it's awesomeness, burpference may require higher system resources to run optimally, especially if using local models. Trust the process and make the machines go brrrrrrrrrrrrr!
- Installed Burp Suite (Community or Professional edition).
- Downloaded and set up Jython standalone
.jarfile (a Python interpreter compatible with Java) to run Python-based extensions in Burp Suite.- You do not need Python2.x runtime in your environment for this to work.
- The
registerExtenderCallbacksreads a configuration file specific to the remote endpoint's input requirements. Ensure this exists in your environment and Burp has the necessary permissions to access it's location on the filesystem.- Important: as Burp Suite cannot read from a filesystem's
osenvironment, you will need to explicitly include API key values in the configuration.jsonfiles per-provider. - If you intend to fork or contribute to burpference, ensure that you have excluded the files from git tracking via
.gitignore. - There's also a pre-commit hook in the repo as an additional safety net. Install pre-commit hooks here.
- Important: as Burp Suite cannot read from a filesystem's
- Setup relevant directory permissions for burpference to create log files:
chmod -R 755 logs configs
In some cases when loading the extension you may experience directory permission write issues and as such its recommended to restart Burp Suite following the above.
- Ollama locally installed if using this provider plugin, example config and the model running locally - ie
ollama run mistral-small(model docs).
Project Structure
/Users/ads/git/burpference/
├── burpference/ # Main package directory
│ ├── __init__.py # Package initialization
│ ├── api_adapters.py # API providers and adapters
│ ├── assets/ # Internal assets
│ │ └── squid_ascii.txt # ASCII art for extension
│ ├── burpference.py # Main extension code
│ ├── consts.py # Constants and configurations
│ ├── db_manager.py # Database operations
│ ├── issues.py # Burp issue implementations
│ └── scanner.py # Security scanner functionality
├── configs/ # API configuration files
│ └── *.json # JSON config files per provider
├── logs/ # Log output directory
│ ├── findings.json # Security findings database
│ └── *.txt # Generated log files
├── prompts/ # Prompt template files
│ ├── proxy_prompt.txt # Default proxy analysis prompt
│ ├── scanner_prompt.txt # Scanner analysis prompt
│ └── openapi_prompt.txt # OpenAPI anal
Related Skills
YC-Killer
2.7kA library of enterprise-grade AI agents designed to democratize artificial intelligence and provide free, open-source alternatives to overvalued Y Combinator startups. If you are excited about democratizing AI access & AI agents, please star ⭐️ this repository and use the link in the readme to join our open source AI research team.
best-practices-researcher
The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app
groundhog
399Groundhog's primary purpose is to teach people how Cursor and all these other coding agents work under the hood. If you understand how these coding assistants work from first principles, then you can drive these tools harder (or perhaps make your own!).
last30days-skill
10.3kAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
