Pipeline Overview
The pipeline is designed to emulate a human penetration tester’s methodology:Phase 1: Pre-Reconnaissance
Agent:pre-reconModel Tier: Large (Claude Opus)
Execution: Sequential
Location:
src/temporal/workflows.ts:375
Purpose
Build a comprehensive map of the application’s attack surface before any exploitation attempts.Activities
External Scanning
External Scanning
Shannon integrates with industry-standard reconnaissance tools:
- Nmap — Port scanning and service detection
- Subfinder — Subdomain enumeration
- WhatWeb — Technology stack fingerprinting
- Schemathesis — API schema analysis
With
PIPELINE_TESTING=true, these tools are skipped (graceful degradation).Source Code Analysis
Source Code Analysis
Deep static analysis of the target repository:
- File structure and technology stack
- Entry points and API endpoints
- Database schemas and ORM configurations
- Authentication and authorization patterns
- Data flow paths from user input to dangerous sinks
prompts/pre-recon-code.txtDeliverable
Deliverable
Produces
code_analysis_deliverable.md containing:- Technology stack summary
- Entry point inventory
- High-level architecture overview
- Initial security observations
- Key files and functions of interest
Example Findings
Phase 2: Reconnaissance
Agent:reconModel Tier: Medium (Claude Sonnet)
Execution: Sequential
Prerequisites:
pre-reconLocation:
src/temporal/workflows.ts:378
Purpose
Perform live application exploration via browser automation to correlate code-level insights with real-world behavior.Activities
- Authentication
- Application Mapping
- Correlation
Login Flow ExecutionShannon supports multiple authentication methods:
- Form-based — Username/password with optional TOTP
- SSO/OAuth — Sign in with Google, GitHub, etc.
- API tokens — Header or query parameter authentication
- Basic auth — HTTP Basic Authentication
prompts/shared/login-instructions.txtExample with 2FA:Deliverable
recon_deliverable.md contains:
- Authenticated user workflows
- API endpoint inventory with request/response examples
- Authentication mechanism details
- Session management observations
- Entry point prioritization for vulnerability analysis
Phase 3: Vulnerability Analysis
Agents: 5 parallel agentsModel Tier: Medium (Claude Sonnet)
Execution: Parallel (configurable concurrency)
Prerequisites:
reconLocation:
src/temporal/workflows.ts:380-448
Parallel Execution Model
Why parallel? Vulnerability analysis is CPU-bound (LLM reasoning) rather than I/O-bound. Running 5 agents concurrently reduces wall-clock time from ~5 hours to ~1 hour.
Injection
injection-vulnXSS
xss-vulnAuthentication
auth-vulnAuthorization
authz-vulnSSRF
ssrf-vulnConcurrency Control
Control parallel execution via config:Range: 1-5
Analysis Methodology
Each agent performs structured data flow analysis:Source Identification
Find all user-controlled input sources:
- HTTP request parameters (query, body, headers)
- File uploads and multipart data
- WebSocket messages
- URL path segments
Sink Detection
Identify dangerous operations for each vulnerability type:
- Injection: SQL queries, shell commands, eval()
- XSS: HTML rendering, DOM manipulation
- Auth: Login bypass, JWT flaws, session fixation
- Authz: IDOR, privilege escalation, missing access checks
- SSRF: HTTP clients, DNS lookups, file reads
Data Flow Tracing
Trace user input to dangerous sinks:
- Follow variables through functions
- Track sanitization and validation
- Identify bypasses and edge cases
Queue System
Each agent writes findings to a vulnerability queue:src/services/queue-validation.ts
Deliverables
Each agent produces two artifacts:- Analysis report:
{type}_analysis_deliverable.md - Exploitation queue:
{type}_queue.json(consumed by Phase 4)
Phase 4: Exploitation
Agents: 5 parallel agentsModel Tier: Medium (Claude Sonnet)
Execution: Parallel (pipelined with Phase 3)
Prerequisites: Corresponding vuln agent
Location:
src/temporal/workflows.ts:389-428
Pipelined Execution
No synchronization barrier: Each exploit agent starts immediately when its vulnerability analysis completes. This reduces wall-clock time by overlapping phases.
Queue Decision Logic
Before launching an exploit agent, Shannon checks the vulnerability queue:src/temporal/workflows.ts:406
Exploitation Methodology
- Proof-by-Exploitation
- Attack Examples
- Browser Automation
“No Exploit, No Report” PolicyShannon only reports vulnerabilities it can successfully exploit:
Verify Impact
Confirm the vulnerability has real-world impact (data exfiltration, privilege escalation, etc.)
Deliverables
Each successful exploit produces:- Evidence file:
{type}_exploitation_evidence.md - Proof-of-Concept: Copy-paste reproducible exploits
- Screenshots: Visual proof (when applicable)
- HTTP traces: Request/response logs
Evidence
[Screenshot: user_database_dump.png] Successfully exfiltrated 1,247 user records including:- Username: admin
- Password hash: 10$…
- Email: [email protected]
workflow.log:
Performance Characteristics
Wall-Clock Time
1-1.5 hours for a typical application
Cost
~$50 USD using Claude 4.5 Sonnet
Parallel Agents
Up to 5 concurrent (Phases 3-4)
Sequential Agents
3 agents (Phases 1, 2, 5)
Cost optimization: Phase 1 uses Large (Opus) for deep reasoning, Phase 5 uses Small (Haiku) for summarization, and Phases 2-4 use Medium (Sonnet) for analysis.
Next Steps
Architecture
Understand the underlying system design
Agents
Explore the 13 specialized agents
Workspaces
Learn about resume and checkpointing
Configuration
Customize authentication and retry behavior