Security
Found a vulnerability? Tell us privately first.
BreachPilot ships offensive security tooling, so a flaw in BreachPilot itself carries real risk. Report it through private channels, never as a public issue, and give maintainers time to fix it before disclosing.
BreachPilot is Apache-2.0-licensed and local-first. Every control below is auditable in the repository. Security enforced in the open.
Trust at a glance
Disclosure, sandbox, vault, local-first
Four commitments covering the whole lifecycle: how you tell us, how runs are contained, how secrets are handled, and where your data lives.
Security pillars
Private disclosure
Report through GitHub private advisories. Details stay visible only to maintainers until a fix is ready. Never file a public issue.
Sandboxed execution
Per-run disposable workers with default-DROP containment scoped to your allowlist. Sandbox failures fail closed.
Encrypted vault
Recovered credentials are encrypted at rest and redacted before logs or reports. Secrets never sit in plaintext config.
Local-first
Runs, evidence, and audit chains live on your machine behind a loopback-only console. No telemetry phones home.
Coordinated disclosure
How to report
Three steps in one private thread. There is no dedicated security inbox; the advisory channel below reaches maintainers directly.
How to report a vulnerability
Use the private channel
The repository lists no dedicated security contact, so GitHub private vulnerability reporting is the front door. Only maintainers can see the details while a fix is prepared.
Include what matters
What you found, which version or commit, lab-only reproduction steps, and the impact boundary: operator box, target scope, or audit integrity.
Give us time to fix
Hold coordinated disclosure until a fix or mitigation ships. We triage privately, patch in the open, and credit reporters who want it.
Stay in scope while reporting. Reproduce in a lab you control only. Only test systems you own or have explicit written permission to assess. The same authorization rule as the tool itself. Do not probe systems you don’t own to prove impact.
How BreachPilot protects you
Containment, secrets, and data, stated honestly
Each guarantee names its limit next to the promise. A control you misunderstand is a control you will misuse.
Sandbox, vault, and local-first guarantees
Sandbox isolation
Each run executes in a disposable worker whose network containment authorizes only your effective target allowlist. Off-allowlist destinations are blocked at the tool layer, and a sandbox that cannot prove containment will not run.
Limitation: A destination guard, not a complete sandbox. The operator-box filesystem is unrestricted by design. Run on a throwaway lab host.
Credential vault
Looted credentials, hashes, and session tokens are encrypted at rest, handled as sensitive through the whole pipeline, and redacted from logs and reports by shape before anything gets written out.
Limitation: Redaction covers known secret shapes. Treat all run output as sensitive until you have reviewed it.
Local-first data
Runs, evidence, and the tamper-evident audit chain live on your machine, served through a loopback-only console at 127.0.0.1:8765. Provider keys come from environment variables only and are never written into config files.
Limitation: Provider and plugin calls you configure still leave the box. Review each integration before you enable it.
Data handling
What stays, what leaves
Local-first means your assessment data never leaves the box unless you send it. This site follows the same rule: no analytics, no external scripts.
Data handling
Stays on your machine
- Run plans, tool output, and evidence store
- Encrypted credential material and loot
- State-transition audit log and exploit timelines
- mission.yaml scope, budgets, and permission modes
Leaves only when you send it
- The advisory you file through GitHub private reporting
- Provider API calls to models you configured
- Outbound plugin traffic you enabled (e.g. status webhooks)
- Reports and evidence archives you choose to export
Review the full handling rules in the privacy policy and the enforcement details in the safety model docs.
Further reading
What to read next
Further reading
Safety model
Scope checks, risk checks, permission modes, audit records, and the operator rules that hold the model together.
Sandbox docs
Disposable worker architecture, network containment, fail-closed posture, and residual risks.
Privacy policy
What this site collects (nothing behavioral), what the tool stores locally, and how to ask questions.
Full source: docs/safety-model.md
Built for authorized security testing
Only test systems you own or have explicit written permission to assess.
Attack mode auto-approves in-scope actions. The target-IP allowlist lock and the mission scope gate stay enforced, with every action in a tamper-evident audit chain.