Core Compute & Architecture
Stateful JVM Interception
Burp holds every request and response it has ever seen in this project as live byte arrays on the JVM heap. That is why a long engagement gets slower rather than staying flat, and why the tool eventually dies from an OutOfMemoryError rather than a crash you can read. G1 (-XX:+UseG1GC) is the right collector because it reclaims concurrently instead of stopping the world, but no collector saves you from a heap ceiling set too low in -Xmx. Set it deliberately; the default is sized for a demo, not a two-week test.
Persistent Project Stores
Project files are a local SQLite database with FlatBuffers-serialised payloads, flushed incrementally so a crash costs you minutes rather than the whole engagement. The trade-off is that the file grows without bound and lives on whatever disk you started it on. A project on a laptop's internal SSD is fine; the same project on a network share or an encrypted external volume will make the whole UI stutter, because every filter and every search in the history tab goes through it.
Under the Hood Architecture
BApp Extensibility Ecosystem
The Montoya API lets third-party extensions hook the request pipeline directly. Worth being blunt about what that means: a BApp runs in the same JVM as Burp, with the same file system and network access as you, and sees every request in the project. There is no sandbox. Installing an extension from the store is a decision to run someone else's code against your client's data, and the review bar for that store is not the bar you would apply yourself.
Active Scanner & Collaborator
Mutation-based fuzzing plus Collaborator, the out-of-band server that catches the bug classes with no in-band response — blind SSRF, blind XXE, deferred injection. No free proxy has an equivalent. The catch is that the default Collaborator is PortSwigger-hosted, so your target's DNS lookups and callbacks transit their infrastructure. Most clients never ask. The ones under a data-residency obligation will, and the answer is a private Collaborator server, configured before the engagement rather than during it.
Real-World Attack Surface
Burp AI Telemetry Leakage
The AI features are opt-in and credit-metered, so this is a configuration risk rather than something happening behind your back. It is still the one worth checking first. When an AI-backed feature is enabled it sends request and response content to a third-party model provider, and request and response content on a real engagement means bearer tokens, session cookies, personal data and whatever the application handles. Nothing in the client asks whether your NDA permits that. Decide it once, at project-creation time, and record the decision — not while you are mid-test and the analyse button looks helpful.
Untrusted Project Files
A .burp project someone sends you is not a document. It is a database plus the extension configuration and, potentially, queued automated tasks that begin running the moment it opens. Parsers for binary formats have a long history of memory-safety bugs and SQLite is no exception, so opening a hostile file is a live code-execution question rather than a theoretical one. Treat a shared project like an executable: open it on a disposable VM, with tasks paused, and confirm what the extensions tab loaded before you touch anything.
Mandatory Hardening Baseline
- Disable Burp AI: Turn the AI features off in settings, then block the endpoints at the network layer as well. Two controls, because the first one is a checkbox that an update or a fresh profile can quietly reset, and nothing tells you when it does.
- Sandbox Project Files: Never open a project file you did not create without a disposable VM and every automated task explicitly paused. Scanner tasks resume on load.
- Dedicated Isolation VM: Run Burp in its own VM with 16 GB of RAM as a floor — both to survive the heap growth of a long engagement and so that a hostile response or a compromised extension lands somewhere you can throw away. The VM costs you a little performance and one extra step at the start of every job. That is the entire price.
Security Tool Comparison
| Component | Burp Suite | Ghidra |
|---|---|---|
| Core Architecture | Monolithic Java JVM | Java GUI + C++ Decompiler |
| Primary Risk | AI Data Leakage, Project RCE | OS Command Injection (UI) |
| State Management | SQLite / FlatBuffers | XML Serialization Protocol |
| Mandatory Hardening | Disable AI, 16GB+ RAM | Air-gapped Hypervisor |