RedRun — continuous, proof-backed security testing you run yourself.
Project description
RedRun CLI
Proof-backed security testing you run yourself. A standalone command-line tool that runs RedRun's scanning engine locally on your machine — passive recon and real, evidence-verified exploitation (SQLi, XSS, SSRF, IDOR, broken auth) — with no cloud dependency.
This is the licensed-software M1 (see ../LICENSED-SOFTWARE-PLAN.md): the engine
runs inside your own environment, so authorization is implicit (you point it at
your own assets) and deeper/internal testing is possible.
Install (customers)
# Recommended: isolated install on PATH
pipx install ./dist/redrun-0.1.0-py3-none-any.whl
# or
pip install ./dist/redrun-0.1.0-py3-none-any.whl
For AI executive summaries: pipx install "redrun[ai]" and set ANTHROPIC_API_KEY.
Licensing
Passive scans are free. Active exploitation requires a license.
redrun license status # show current license
redrun license activate your.lic # install a license file (offline-verified)
Licenses are Ed25519-signed and verified offline with an embedded public key — no server call, air-gap friendly. Tampering invalidates the signature.
Usage
# Passive scan — recon, headers, TLS, DNS, exposed paths, nuclei CVE templates
redrun scan example.com
# Active exploitation — requires explicit authorization
redrun scan staging.myapp.com --active --authorized
# Production-looking host needs an extra confirmation
redrun scan myapp.com --active --authorized --confirm-production
# Extra in-scope hosts, JSON export, kernel sandbox
redrun scan myapp.com --active --authorized --scope api.myapp.com --json out.json
redrun scan myapp.com --active --authorized --sandbox docker
Options
| Flag | Meaning |
|---|---|
--active |
run real exploitation (not just passive observation) |
--authorized |
confirm you own / may test the target (required for --active) |
--confirm-production |
authorize an active scan against a production-looking host |
--scope a,b |
additional in-scope hosts |
--sandbox local|docker|auto |
containment for active scans (default local egress guard; docker = kernel iptables allowlist, needs a Docker host) |
--json FILE |
write full results to JSON |
--no-ai |
skip the AI executive summary |
Safety
- Passive scans are read-only and legal on any domain.
- Active scans send real attack payloads — only run them against systems you
own or are authorized to test. The
--authorizedflag is your rules-of-engagement. - Active scanning is detection-only: it proves a vulnerability exists with request/response evidence, then stops — it never exfiltrates data or causes damage.
- Outbound traffic is scope-enforced (egress guard by default; optional Docker kernel sandbox).
Optional
- AI summaries: set
ANTHROPIC_API_KEYand install the[ai]extra for an executive summary. Without it, the CLI runs fully offline. - Nuclei: if the
nucleibinary is on PATH, CVE templates run automatically; otherwise that step is skipped.
Build & release (maintainers)
python -m build --wheel # → dist/redrun-<v>-py3-none-any.whl
Issue a license (internal — needs the private signing key in scripts/.keys/,
which is gitignored and must never ship):
python scripts/issue_license.py --email user@co.com --tier pro --days 365
Architecture
redrun/engine/ is a vendored copy of the scanning engine (recon, scope, egress
guard, exploit tools, reporter). The CLI orchestrates it locally. Vendored for
M1 to keep the tool standalone and zero-risk to the live web backend; a shared
redrun_core package can de-duplicate later. redrun/licensing.py holds the
embedded license-verification public key.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file redrun-0.1.0.tar.gz.
File metadata
- Download URL: redrun-0.1.0.tar.gz
- Upload date:
- Size: 65.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3561dccf4ab9866ccd37cb712713d26f354c24e2b2d970d8d4582ffa987d5d7a
|
|
| MD5 |
2fc1b1cd6bbea147793af5c7b0ce0492
|
|
| BLAKE2b-256 |
bb82d1af6d64425ff810d800fa3db32df3f6c4e2043c6263bb351c69a09aecc2
|
File details
Details for the file redrun-0.1.0-py3-none-any.whl.
File metadata
- Download URL: redrun-0.1.0-py3-none-any.whl
- Upload date:
- Size: 76.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6d28bde8edca722c551dcb0b739d6b50c54198e18c3dcf4337d12c6b8d51d8f
|
|
| MD5 |
e527d94f0e32dbcdfb910df26c279fff
|
|
| BLAKE2b-256 |
9a2decaa78be186bee6f5bb8e4a45aa5c2e50a85d09b6e7e44dcc4cf3cee246a
|