AI-Powered Autonomous Penetration Testing Platform
NeuroSploit v3 is an advanced security assessment platform that combines AI-driven autonomous agents with 100 vulnerability types, per-scan isolated Kali Linux containers, false-positive hardening, exploit chaining, and a modern React web interface with real-time monitoring.
- 100 Vulnerability Types across 10 categories with AI-driven testing prompts
- Autonomous Agent - 3-stream parallel pentest (recon + junior tester + tool runner)
- Per-Scan Kali Containers - Each scan runs in its own isolated Docker container
- Anti-Hallucination Pipeline - Negative controls, proof-of-execution, confidence scoring
- Exploit Chain Engine - Automatically chains findings (SSRF->internal, SQLi->DB-specific, etc.)
- WAF Detection & Bypass - 16 WAF signatures, 12 bypass techniques
- Smart Strategy Adaptation - Dead endpoint detection, diminishing returns, priority recomputation
- Multi-Provider LLM - Claude, GPT, Gemini, Ollama, LMStudio, OpenRouter
- Real-Time Dashboard - WebSocket-powered live scan progress, findings, and reports
- Sandbox Dashboard - Monitor running Kali containers, tools, health checks in real-time
- Quick Start
- Architecture
- Autonomous Agent
- 100 Vulnerability Types
- Kali Sandbox System
- Anti-Hallucination & Validation
- Web GUI
- API Reference
- Configuration
- Development
- Security Notice
# Clone repository
git clone https://github.com/your-org/NeuroSploitv2.git
cd NeuroSploitv2
# Copy environment file and add your API keys
cp .env.example .env
nano .env # Add ANTHROPIC_API_KEY, OPENAI_API_KEY, or GEMINI_API_KEY
# Build the Kali sandbox image (first time only, ~5 min)
./scripts/build-kali.sh
# Start backend
uvicorn backend.main:app --host 0.0.0.0 --port 8000# Backend
pip install -r requirements.txt
uvicorn backend.main:app --host 0.0.0.0 --port 8000 --reload
# Frontend (new terminal)
cd frontend
npm install
npm run dev# Normal build (uses Docker cache)
./scripts/build-kali.sh
# Full rebuild (no cache)
./scripts/build-kali.sh --fresh
# Build + run health check
./scripts/build-kali.sh --test
# Or via docker-compose
docker compose -f docker/docker-compose.kali.yml buildAccess the web interface at http://localhost:8000 (production build) or http://localhost:5173 (dev mode).
NeuroSploitv3/
βββ backend/ # FastAPI Backend
β βββ api/v1/ # REST API (13 routers)
β β βββ scans.py # Scan CRUD + pause/resume/stop
β β βββ agent.py # AI Agent control
β β βββ agent_tasks.py # Scan task tracking
β β βββ dashboard.py # Stats + activity feed
β β βββ reports.py # Report generation (HTML/PDF/JSON)
β β βββ scheduler.py # Cron/interval scheduling
β β βββ vuln_lab.py # Per-type vulnerability lab
β β βββ terminal.py # Terminal agent (10 endpoints)
β β βββ sandbox.py # Sandbox container monitoring
β β βββ targets.py # Target validation
β β βββ prompts.py # Preset prompts
β β βββ vulnerabilities.py # Vulnerability management
β β βββ settings.py # Runtime settings
β βββ core/
β β βββ autonomous_agent.py # Main AI agent (~7000 lines)
β β βββ vuln_engine/ # 100-type vulnerability engine
β β β βββ registry.py # 100 VULNERABILITY_INFO entries
β β β βββ payload_generator.py # 526 payloads across 95 libraries
β β β βββ ai_prompts.py # Per-vuln AI decision prompts
β β β βββ system_prompts.py # 12 anti-hallucination prompts
β β β βββ testers/ # 10 category tester modules
β β βββ validation/ # False-positive hardening
β β β βββ negative_control.py # Benign request control engine
β β β βββ proof_of_execution.py # Per-type proof checks (25+ methods)
β β β βββ confidence_scorer.py # Numeric 0-100 scoring
β β β βββ validation_judge.py # Sole authority for finding approval
β β βββ request_engine.py # Retry, rate limit, circuit breaker
β β βββ waf_detector.py # 16 WAF signatures + bypass
β β βββ strategy_adapter.py # Mid-scan strategy adaptation
β β βββ chain_engine.py # 10 exploit chain rules
β β βββ auth_manager.py # Multi-user auth management
β β βββ xss_context_analyzer.py # 8-context XSS analysis
β β βββ poc_generator.py # 20+ per-type PoC generators
β β βββ execution_history.py # Cross-scan learning
β β βββ access_control_learner.py # Adaptive BOLA/BFLA/IDOR learning
β β βββ response_verifier.py # 4-signal response verification
β β βββ agent_memory.py # Bounded dedup agent memory
β β βββ report_engine/ # OHVR report generator
β βββ models/ # SQLAlchemy ORM models
β βββ db/ # Database layer
β βββ config.py # Pydantic settings
β βββ main.py # FastAPI app entry
β
βββ core/ # Shared core modules
β βββ llm_manager.py # Multi-provider LLM routing
β βββ sandbox_manager.py # BaseSandbox ABC + legacy shared sandbox
β βββ kali_sandbox.py # Per-scan Kali container manager
β βββ container_pool.py # Global container pool coordinator
β βββ tool_registry.py # 56 tool install recipes for Kali
β βββ mcp_server.py # MCP server (12 tools, stdio)
β βββ scheduler.py # APScheduler scan scheduling
β βββ browser_validator.py # Playwright browser validation
β
βββ frontend/ # React + TypeScript Frontend
β βββ src/
β β βββ pages/
β β β βββ HomePage.tsx # Dashboard with stats
β β β βββ AutoPentestPage.tsx # 3-stream auto pentest
β β β βββ VulnLabPage.tsx # Per-type vulnerability lab
β β β βββ TerminalAgentPage.tsx # AI terminal chat
β β β βββ SandboxDashboardPage.tsx # Container monitoring
β β β βββ ScanDetailsPage.tsx # Findings + validation
β β β βββ SchedulerPage.tsx # Cron/interval scheduling
β β β βββ SettingsPage.tsx # Configuration
β β β βββ ReportsPage.tsx # Report management
β β βββ components/ # Reusable UI components
β β βββ services/api.ts # API client layer
β β βββ types/index.ts # TypeScript interfaces
β βββ package.json
β
βββ docker/
β βββ Dockerfile.kali # Multi-stage Kali sandbox (11 Go tools)
β βββ Dockerfile.sandbox # Legacy Debian sandbox
β βββ Dockerfile.backend # Backend container
β βββ Dockerfile.frontend # Frontend container
β βββ docker-compose.kali.yml # Kali sandbox build
β βββ docker-compose.sandbox.yml # Legacy sandbox
β
βββ config/config.json # Profiles, tools, sandbox, MCP
βββ data/
β βββ vuln_knowledge_base.json # 100 vuln type definitions
β βββ execution_history.json # Cross-scan learning data
β βββ access_control_learning.json # BOLA/BFLA adaptive data
β
βββ scripts/
β βββ build-kali.sh # Build/rebuild Kali image
βββ tools/
β βββ benchmark_runner.py # 104 CTF challenges
βββ agents/base_agent.py # BaseAgent class
βββ neurosploit.py # CLI entry point
βββ requirements.txt
The AI agent (autonomous_agent.py) orchestrates the entire penetration test autonomously.
βββββββββββββββββββββββ
β Auto Pentest β
β Target URL(s) β
ββββββββββ¬βββββββββββββ
β
ββββββββββββββββΌβββββββββββββββ
βΌ βΌ βΌ
ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
β Stream 1 β β Stream 2 β β Stream 3 β
β Recon β β Junior Test β β Tool Runner β
β βββββββββββ β β βββββββββββ β β βββββββββββ β
β Crawl pages β β Test target β β Nuclei scan β
β Find params β β AI-priority β β Naabu ports β
β Tech detect β β 3 payloads β β AI decides β
β WAF detect β β per endpointβ β extra tools β
ββββββββ¬ββββββββ ββββββββ¬ββββββββ ββββββββ¬ββββββββ
β β β
ββββββββββββββββββΌβββββββββββββββββ
βΌ
βββββββββββββββββββββββ
β Deep Analysis β
β 100 vuln types β
β Full payload sets β
β Chain exploitation β
βββββββββββ¬ββββββββββββ
βΌ
βββββββββββββββββββββββ
β Report Generation β
β AI executive brief β
β PoC code per find β
βββββββββββββββββββββββ
| Module | Description |
|---|---|
| Request Engine | Retry with backoff, per-host rate limiting, circuit breaker, adaptive timeouts |
| WAF Detector | 16 WAF signatures (Cloudflare, AWS, Akamai, Imperva, etc.), 12 bypass techniques |
| Strategy Adapter | Dead endpoint detection, diminishing returns, 403 bypass, priority recomputation |
| Chain Engine | 10 chain rules (SSRF->internal, SQLi->DB-specific, LFI->config, IDOR pattern transfer) |
| Auth Manager | Multi-user contexts (user_a, user_b, admin), login form detection, session management |
- Pause / Resume / Stop with checkpoints
- Manual Validation - Confirm or reject AI findings
- Screenshot Capture on confirmed findings (Playwright)
- Cross-Scan Learning - Historical success rates influence future priorities
- CVE Testing - Regex detection + AI-generated payloads
| Category | Types | Examples |
|---|---|---|
| Injection | 38 | XSS (reflected/stored/DOM), SQLi, NoSQLi, Command Injection, SSTI, LDAP, XPath, CRLF, Header Injection, Log Injection, GraphQL Injection |
| Inspection | 21 | Security Headers, CORS, Clickjacking, Info Disclosure, Debug Endpoints, Error Disclosure, Source Code Exposure |
| AI-Driven | 41 | BOLA, BFLA, IDOR, Race Condition, Business Logic, JWT Manipulation, OAuth Flaws, Prototype Pollution, WebSocket Hijacking, Cache Poisoning, HTTP Request Smuggling |
| Authentication | 8 | Auth Bypass, Session Fixation, Credential Stuffing, Password Reset Flaws, MFA Bypass, Default Credentials |
| Authorization | 6 | BOLA, BFLA, IDOR, Privilege Escalation, Forced Browsing, Function-Level Access Control |
| File Access | 5 | LFI, RFI, Path Traversal, File Upload, XXE |
| Request Forgery | 4 | SSRF, CSRF, Cloud Metadata, DNS Rebinding |
| Client-Side | 8 | CORS, Clickjacking, Open Redirect, DOM Clobbering, Prototype Pollution, PostMessage, CSS Injection |
| Infrastructure | 6 | SSL/TLS, HTTP Methods, Subdomain Takeover, Host Header, CNAME Hijacking |
| Cloud/Supply | 4 | Cloud Metadata, S3 Bucket Misconfiguration, Dependency Confusion, Third-Party Script |
- 526 payloads across 95 libraries
- 73 XSS stored payloads + 5 context-specific sets
- Per-type AI decision prompts with anti-hallucination directives
- WAF-adaptive payload transformation (12 techniques)
Each scan runs in its own isolated Kali Linux Docker container, providing:
- Complete Isolation - No interference between concurrent scans
- On-Demand Tools - 56 tools installed only when needed
- Auto Cleanup - Containers destroyed when scan completes
- Resource Limits - Per-container memory (2GB) and CPU (2 cores) limits
| Category | Tools |
|---|---|
| Scanners | nuclei, naabu, httpx, nmap, nikto, masscan, whatweb |
| Discovery | subfinder, katana, dnsx, uncover, ffuf, gobuster, waybackurls |
| Exploitation | dalfox, sqlmap |
| System | curl, wget, git, python3, pip3, go, jq, dig, whois, openssl, netcat, bash |
Installed automatically inside the container when first requested:
- APT: wpscan, dirb, hydra, john, hashcat, testssl, sslscan, enum4linux, dnsrecon, amass, medusa, crackmapexec, etc.
- Go: gau, gitleaks, anew, httprobe
- Pip: dirsearch, wfuzz, arjun, wafw00f, sslyze, commix, trufflehog, retire
ContainerPool (global coordinator, max 5 concurrent)
βββ KaliSandbox(scan_id="abc") β docker: neurosploit-abc
βββ KaliSandbox(scan_id="def") β docker: neurosploit-def
βββ KaliSandbox(scan_id="ghi") β docker: neurosploit-ghi
- TTL enforcement - Containers auto-destroyed after 60 min
- Orphan cleanup - Stale containers removed on server startup
- Graceful fallback - Falls back to shared container if Docker unavailable
NeuroSploit uses a multi-layered validation pipeline to eliminate false positives:
Finding Candidate
β
βΌ
βββββββββββββββββββββββ
β Negative Controls β Send benign/empty requests as controls
β Same behavior = FP β -60 confidence if same response
βββββββββββ¬ββββββββββββ
βΌ
βββββββββββββββββββββββ
β Proof of Execution β 25+ per-vuln-type proof methods
β XSS: context check β SSRF: metadata markers
β SQLi: DB errors β BOLA: data comparison
βββββββββββ¬ββββββββββββ
βΌ
βββββββββββββββββββββββ
β AI Interpretation β LLM with anti-hallucination prompts
β Per-type system msgs β 12 composable prompt templates
βββββββββββ¬ββββββββββββ
βΌ
βββββββββββββββββββββββ
β Confidence Scorer β 0-100 numeric score
β β₯90 = confirmed β +proof, +impact, +controls
β β₯60 = likely β -baseline_only, -same_behavior
β <60 = rejected β Breakdown visible in UI
βββββββββββ¬ββββββββββββ
βΌ
βββββββββββββββββββββββ
β Validation Judge β Final verdict authority
β approve / reject β Records for adaptive learning
βββββββββββββββββββββββ
12 composable prompts applied across 7 task contexts:
anti_hallucination- Core truthfulness directivesproof_of_execution- Require concrete evidencenegative_controls- Compare with benign requestsanti_severity_inflation- Accurate severity ratingsaccess_control_intelligence- BOLA/BFLA data comparison methodology
- Records TP/FP outcomes per domain for BOLA/BFLA/IDOR
- 9 default response patterns, 6 known FP patterns (WSO2, Keycloak, etc.)
- Historical FP rate influences future confidence scoring
| Page | Route | Description |
|---|---|---|
| Dashboard | / |
Stats overview, severity distribution, recent activity feed |
| Auto Pentest | /auto |
One-click autonomous pentest with 3-stream live display |
| Vuln Lab | /vuln-lab |
Per-type vulnerability testing (100 types, 11 categories) |
| Terminal Agent | /terminal |
AI-powered interactive security chat + tool execution |
| Sandboxes | /sandboxes |
Real-time Docker container monitoring + management |
| AI Agent | /scan/new |
Manual scan creation with prompt selection |
| Scan Details | /scan/:id |
Findings with confidence badges, pause/resume/stop |
| Scheduler | /scheduler |
Cron/interval automated scan scheduling |
| Reports | /reports |
HTML/PDF/JSON report generation and viewing |
| Settings | /settings |
LLM providers, model routing, feature toggles |
Real-time monitoring of per-scan Kali containers:
- Pool stats - Active/max containers, Docker status, TTL
- Capacity bar - Visual utilization indicator
- Per-container cards - Name, scan link, uptime, installed tools, status
- Actions - Health check, destroy (with confirmation), cleanup expired/orphans
- 5-second auto-polling for real-time updates
http://localhost:8000/api/v1
| Method | Endpoint | Description |
|---|---|---|
POST |
/scans |
Create new scan |
GET |
/scans |
List all scans |
GET |
/scans/{id} |
Get scan details |
POST |
/scans/{id}/start |
Start scan |
POST |
/scans/{id}/stop |
Stop scan |
POST |
/scans/{id}/pause |
Pause scan |
POST |
/scans/{id}/resume |
Resume scan |
DELETE |
/scans/{id} |
Delete scan |
| Method | Endpoint | Description |
|---|---|---|
POST |
/agent/run |
Launch autonomous agent |
GET |
/agent/status/{id} |
Get agent status + findings |
GET |
/agent/by-scan/{scan_id} |
Get agent by scan ID |
POST |
/agent/stop/{id} |
Stop agent |
POST |
/agent/pause/{id} |
Pause agent |
POST |
/agent/resume/{id} |
Resume agent |
GET |
/agent/findings/{id} |
Get findings with details |
GET |
/agent/logs/{id} |
Get agent logs |
| Method | Endpoint | Description |
|---|---|---|
GET |
/sandbox |
List containers + pool status |
GET |
/sandbox/{scan_id} |
Health check container |
DELETE |
/sandbox/{scan_id} |
Destroy container |
POST |
/sandbox/cleanup |
Remove expired containers |
POST |
/sandbox/cleanup-orphans |
Remove orphan containers |
| Method | Endpoint | Description |
|---|---|---|
GET |
/scheduler |
List scheduled jobs |
POST |
/scheduler |
Create scheduled job |
DELETE |
/scheduler/{id} |
Delete job |
POST |
/scheduler/{id}/pause |
Pause job |
POST |
/scheduler/{id}/resume |
Resume job |
| Method | Endpoint | Description |
|---|---|---|
GET |
/vuln-lab/types |
List 100 vuln types by category |
POST |
/vuln-lab/run |
Run per-type vulnerability test |
GET |
/vuln-lab/challenges |
List challenge runs |
GET |
/vuln-lab/stats |
Detection rate stats |
| Method | Endpoint | Description |
|---|---|---|
POST |
/reports |
Generate report |
POST |
/reports/ai-generate |
AI-powered report |
GET |
/reports/{id}/view |
View HTML report |
GET |
/dashboard/stats |
Dashboard statistics |
GET |
/dashboard/activity-feed |
Recent activity |
ws://localhost:8000/ws/scan/{scan_id}
Events: scan_started, progress_update, finding_discovered, scan_completed, scan_error
Interactive docs available at:
- Swagger UI:
http://localhost:8000/api/docs - ReDoc:
http://localhost:8000/api/redoc
# LLM API Keys (at least one required)
ANTHROPIC_API_KEY=your-key
OPENAI_API_KEY=your-key
GEMINI_API_KEY=your-key
# Local LLM (optional)
OLLAMA_BASE_URL=http://localhost:11434
LMSTUDIO_BASE_URL=http://localhost:1234
OPENROUTER_API_KEY=your-key
# Database
DATABASE_URL=sqlite+aiosqlite:///./data/neurosploit.db
# Server
HOST=0.0.0.0
PORT=8000
DEBUG=false{
"llm": {
"default_profile": "gemini_pro_default",
"profiles": { ... }
},
"agent_roles": {
"pentest_generalist": { "vuln_coverage": 100 },
"bug_bounty_hunter": { "vuln_coverage": 100 }
},
"sandbox": {
"mode": "per_scan",
"kali": {
"enabled": true,
"image": "neurosploit-kali:latest",
"max_concurrent": 5,
"container_ttl_minutes": 60
}
},
"mcp_servers": {
"neurosploit_tools": {
"transport": "stdio",
"command": "python3",
"args": ["-m", "core.mcp_server"]
}
}
}pip install -r requirements.txt
uvicorn backend.main:app --reload --host 0.0.0.0 --port 8000
# API docs: http://localhost:8000/api/docscd frontend
npm install
npm run dev # Dev server at http://localhost:5173
npm run build # Production build./scripts/build-kali.sh --test # Build + health checkpython3 -m core.mcp_server # Starts stdio MCP server (12 tools)This tool is for authorized security testing only.
- Only test systems you own or have explicit written permission to test
- Follow responsible disclosure practices
- Comply with all applicable laws and regulations
- Unauthorized access to computer systems is illegal
MIT License - See LICENSE for details.
| Layer | Technologies |
|---|---|
| Backend | Python, FastAPI, SQLAlchemy, Pydantic, aiohttp |
| Frontend | React 18, TypeScript, TailwindCSS, Vite |
| AI/LLM | Anthropic Claude, OpenAI GPT, Google Gemini, Ollama, LMStudio, OpenRouter |
| Sandbox | Docker, Kali Linux, ProjectDiscovery suite, Nmap, SQLMap, Nikto |
| Tools | Nuclei, Naabu, httpx, Subfinder, Katana, FFuf, Gobuster, Dalfox |
| Infra | Docker Compose, MCP Protocol, Playwright, APScheduler |
NeuroSploit v3 - AI-Powered Autonomous Penetration Testing Platform