VAULT
브라우저에서 비밀번호로 파일을 암호화·복호화하며 데이터는 절대 업로드되지 않습니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Attack surface mapping and threat-modeling workspace for bug bounty hunters to organize targets, track testing hypotheses, manage findings, and integrate reconnaissance and enrichment APIs during security assessments.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A platform for authorized security testing. Run an engagement for a client under a written authorization: track scope and assets, orchestrate tooling, capture evidence, and produce the findings and reports you hand back.
Bug bounty work is one engagement_type among four (bug_bounty, pentest, red_team, internal) — a supported mode rather than the centre of gravity.README 전문 보기 ↗A platform for authorized security testing. Run an engagement for a client under a written authorization: track scope and assets, orchestrate tooling, capture evidence, and produce the findings and reports you hand back.
Bug bounty work is one engagement_type among four (bug_bounty, pentest, red_team, internal) — a supported mode rather than the centre of gravity.
| Layer | Technology | Hosting |
|---|---|---|
| Frontend | Next.js 16 (App Router, TypeScript) | Compose or Vercel |
| Backend | FastAPI (Python 3.12) | Compose or Railway |
| Database | PostgreSQL (psycopg3) | Compose or Railway |
| Auth | Configured local accounts, GitHub OAuth → Auth.js v5 → backend JWT, or both; separate API keys | — |
| ORM | SQLAlchemy + Alembic | — |
Engagement model
bug_bounty, pentest, red_team, or internal, with status, dates, and a clientGET /engagements/{id}/authorization/active answers "is there permission right now?"Testing workflow
value_env / value_keychain), never stored.vmap_ tokens) for external tool access (e.g. Burp Suite)Scan Jobs orchestration console — full job management UI in the browser:
VardrRunner — local CLI companion (VardrSec/VardrRunner, its own repo):
pipx install vardrrunner; update it with vardrrunner update (0.50.0+; older copies run pipx upgrade vardrrunner once)vardrrunner init --url <api-url>: it prompts for a runner-scoped vmap_ key (stored in the OS keychain), names the runner and runs doctor. VardrRunner runs only when invoked — no startup service or background workervardrrunner tools install --all — install, update or repair the pinned scan tools; safe to rerunvardrrunner doctor — check config, API connectivity and local tool availability; heartbeats report hostname, OS, version and per-tool status to VardrMapvardrrunner jobs run*.example.com) handled via subfinder enumerationVardrMap evaluates every job against the engagement's authorization, testing window, and scope rules, and reports what it finds without refusing to run. Findings come back as a warnings array on job creation, claim, and the transition into running, carrying stable reason codes (target_out_of_scope, outside_testing_window, authorization_missing, …).
Staying inside scope is the operator's responsibility, the same as it is with every other tool in the kit — Burp proxies any host you point it at, and nmap scans any range you hand it. A platform that blocks on its own reading of a scope rule interrupts legitimate work, and scope in the field is messier than any rule set.
The one exception is stop-work, which returns 403 to prevent new execution; it does not cancel already running local processes. That is not the platform second-guessing the operator: it is the operator's own emergency brake, and a brake that can be ignored is not a brake.
Rationale in docs/adr/0001-central-policy-engine.md § Amendment.
sub, aud, iss and exp required, with signature, audience, issuer and expiry validated404, and viewers cannot writenh3 strip on long-form fieldsframe-ancestors, base-uri and object-src; a script-source policy is not yet set.json, .jsonl), content-type check, 2 MB limitFor a source-built local platform, follow the VardrSec distribution installation guide. It provides Compose lifecycle, trusted local HTTPS, an explicit terminal account bootstrap and Runner diagnostics. Starting the platform does not start scans.
Login methods are selected explicitly with VARDRMAP_AUTH_METHODS=github, local
or github,local on both services. Local accounts use the existing user, ownership
and organization permissions. Read local authentication
for password/session controls, bootstrap and recovery. GitHub OAuth remains available
for hosted deployments; its credentials are required only when that provider is enabled.
The snippets below are the default GitHub-only development setup. Local-account browser development requires trusted HTTPS for both UI and API; these HTTP dev servers alone do not provide it. See docs/development.md for environment variables, migrations and tests.
Backend (short version):
cd backend
python -m venv venv
.\venv\Scripts\Activate.ps1 # Windows
# source venv/bin/activate # macOS/Linux
pip install -r requirements.txt
cp .env.example .env # fill in values
uvicorn main:app --reload
Frontend (short version):
cd frontend
npm install
cp .env.example .env.local # fill in values
npm run dev
| Document | Contents |
|---|---|
| docs/product-vision.md | What this is, the operating model, and what it deliberately is not |
| docs/architecture.md | Auth flow, data model, component relationships |
| docs/domain-model.md | Entity map, what exists today, and how each gap closes |
| docs/security-model.md | Threat model, scope-matching rules, tenant isolation |
| docs/api.md | Full API endpoint reference |
| docs/development.md | Development setup, env vars, migrations, tests |
| docs/local-authentication.md | Configured login methods, HTTPS, terminal account bootstrap and recovery |
| docs/api-playbooks.md | Original versioned API engagement guidance and human review boundaries |
| scripts/integration/README.md | Disposable Map → Runner → Gate acceptance and hosted staging boundaries |
| docs/implementation-roadmap.md | Historical phased delivery plan; current backlog lives in roadmap.md |
See docs/roadmap.md for the current backlog. Remaining work includes identity/session preflight, broader API guidance, organization administration and organization-bound runner credentials, engagement-wide execution budgets, signed contracts, running-process cancellation, remote MCP OAuth, and the physical table rename.
Organization access, finding activity/retest records, reviewed case authoring and client deliverable revisions are implemented. Assessment outcomes, structured execution evidence and shared playbooks are recorded under Unreleased; their presence in this branch does not establish a production deployment. Deploy the matching backend migration before releasing the companion Runner changes.
Copyright (C) 2026 Jorge Aquino.
VardrMap is free software licensed under the GNU Affero General Public License v3.0. You may use, study, modify, and redistribute it under those terms — see LICENSE for the full text. Because VardrMap is typically run as a network service, the AGPL's §13 applies: if you run a modified version and let others interact with it over a network, you must offer them the complete corresponding source of your modified version.
As the sole copyright holder, Jorge Aquino can also make VardrMap available under separate commercial terms. If the AGPL does not fit your use, contact the author about a commercial license.
VardrRunner is distributed separately under the MIT license to keep the client easy to adopt.
| docs/adr/ | Architecture decision records |
| docs/security-testing.md | Manual security testing record — BOLA, XSS, SQLi |
| docs/roadmap.md | Forward-looking backlog (next milestone) |
| CHANGELOG.md | Version history |