RedScope AI is a security-engineering and authorized red-team assistant. Use it only against systems, networks, accounts, logs, and repositories you are explicitly authorized to assess.
- Written rules of engagement (RoE) / scope documents are required for active testing.
- Scope, rate limits, and evidence retention are first-class project constraints — not optional.
- The project does not support unauthorized scanning, mass targeting, or detection evasion for malicious purposes.
On first launch RedScope can prompt (or you can run
bun run redscope:first-run) to:
- Scrape ~500 public free-proxy endpoints from public list pages, for IP rotation during authorized testing. The pool auto-refreshes about every 6 hours when you opted in.
- Silently collect ≥100 PoC / n-day references (CVE metadata + official advisory links only). Individual entries are not dumped to the console.
Both steps are optional. Declining is fine; you can run the collectors later:
bun run redscope:first-run
bun run redscope:proxy-scrape -- --limit 500
bun run redscope:poc-catalogPublic free-proxy nodes are noisy and short-lived. Always health-check before use, and only send traffic at in-scope targets.
- Help plan and execute authorized penetration tests, recon, and analysis inside a declared scope.
- Auto-write per-host progress / activity / findings into
redscope-engagement.jsonand refresh the recon map during testing. - Index public vulnerability / advisory metadata and, when a target fingerprint matches, capture related n-day references into the local catalog.
- Rotate among user-opted public free proxies and/or referee-provided egress nodes.
- Gate “vulnerability confirmed” behind evidence-based verification — version banners alone are not enough (high false-positive risk).
- Claim a host is vulnerable from a version string / Server banner alone.
- Ship or generate weaponized exploit payloads inside this repository. RedScope stores CVE/advisory references, fingerprint→n-day metadata, and evidence-gated verification hooks. Live exploitation tooling (if any) must come from external, operator-installed, authorized scanners (e.g. nuclei under an approved profile) and still pass the evidence gate before a finding is marked confirmed/exploited.
- Bypass the permission / auto-mode gates without an explicit full-access (bypassPermissions / auto) opt-in from the operator.
- Test out-of-scope targets. Full-access autonomy still requires a declared engagement scope.
While a test step runs, RedScope can:
- Health-check the current egress IP (TCP)
- On failure / HTTP block (403/407/429/…) silently cool that node
- Switch to the next live proxy and continue the same request/step
import { withSilentEgress, fetchWithSilentEgress } from './src/utils/silentEgress.ts'
import { startTestStep, probeFingerprintAndCaptureNdays, finishTestStep } from './src/utils/testSession.ts'No operator prompt mid-test — rotation is automatic within the configured pool.
postinstall runs scripts/postinstall-redscope-bootstrap.cjs, which (unless
skipped) downloads ~500 public free-proxy nodes and builds ≥100 PoC references
into the user config / workspace. Non-fatal on failure.
# skip
REDSCOPE_SKIP_FIRST_RUN_BOOTSTRAP=1 npm i -g @redscope-ai/redscope
# force redo
REDSCOPE_FORCE_FIRST_RUN_BOOTSTRAP=1 bun run scripts/postinstall-redscope-bootstrap.cjs# Public free-proxy pool (after first-run opt-in or manual scrape)
bun run redscope:proxy-scrape -- --limit 500
bun run redscope:proxy-scrape -- --status
# Health-check + select through whatever pool loadEgressConfig() resolves
bun run redscope:egress-refresh -- --status
bun run redscope:egress-refresh -- --check
bun run redscope:egress-refresh -- --select --target <in-scope-host>loadEgressConfig() preference order:
REDSCOPE_EGRESS_CONFIG/REDSCOPE_TOOLS_EGRESS_CONFIG- Public free-proxy pool (
public-free-proxies.json) when present - Referee-provided authorized egress config
bun run redscope:fingerprint-nday -- --url https://in-scope.example
bun run redscope:fingerprint-nday -- --url https://in-scope.example --host-id ext-webMatching products pull local catalog hits and (unless --offline) query NVD
keyword search. New CVE references are appended to redscope-poc-catalog.json
for next time. This stores metadata + links, not exploit code.
When template verification is needed and nuclei is not installed, RedScope prompts the operator to download it into the current project:
bun run redscope:nuclei-setup
# → tools/bin/nuclei(.exe)After install, maybeRunNucleiVerification() / profile steps can invoke it
automatically against in-scope targets. Hits still pass the evidence gate
before a finding is confirmed.
pocVerification.judgeVerification() refuses to confirm findings when the only
signal is a version/banner match. Confirmation requires non-version evidence
(body marker, file-read contents, auth-bypass proof, OOB token, scanner
template hit with proof, etc.). Use verifyAndRecordFinding() to write through
to the engagement graph with progress auto-update.
import {
beginHostTest,
reportHostProgress,
reportHostFinding,
completeHostTest,
} from './src/utils/engagementProgress.ts'These helpers persist redscope-engagement.json and regenerate
redscope-recon-map.html so the HUD and SVG map stay live during a test.
bun run redscope:poc-catalogWrites / refreshes redscope-poc-catalog.json (≥100 scope-gated public
CVE/advisory references). Planning material, not an executable arsenal.
bun run redscope:recon-mapIf you find a security issue in this project (the CLI, build pipeline, or bundled scripts), please open a private report via the repository’s security advisory channel or contact the maintainers.
| Version | Supported |
|---|---|
| 1.x | yes |