full-pentest
Skill9 starsChanged 5 months agoMITView on GitHub
Run a complete end-to-end penetration test with full exploitation and data extraction against a target. Use when the user wants a comprehensive pentest.
In this repository11 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- api-securitySkill
- bug-bountySkill
- exploit-devSkill
- full-attack-chainSkill
- network-infrastructureSkill
- osint-gatheringSkill
- quick-scanSkill
- recon-deepSkill
- vuln-assessmentSkill
- web-app-assessmentSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
22 rules. About 0 are common, 17 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈17
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 21
If no target was provided, ask the user:
- Distinctive: line 33
Treat the execution plan that follows as your default playbook, not a straitjacket: follow it closely, but adapt the moment a tool, target, …
- Very specific: line 37
Run local readiness checks: make mcp-status for offline validation.
- Very specific: line 38
Call list_tools on the blhackbox MCP server and every connected specialist MCP server (Kali, Screenshot, WireMCP, HexStrike, BOAZ, gateway, …
- Distinctive: line 57
Follow the chain: OSINT/passive recon → active discovery → service/content enumeration → vulnerability hypothesis → validation → …
- Distinctive: line 58
Use every relevant discovered tool capability where it adds coverage.
- Distinctive: line 59
When a tool fails, log the error, switch to the fallback, and include the coverage impact in the final report.
- Very specific: line 151
Test for file read/write capabilities (INTO OUTFILE, LOAD_FILE)
- Distinctive: line 155
Test discovered default/weak credentials — log in and screenshot the session
- Distinctive: line 156
Test for JWT vulnerabilities (none algorithm, key confusion)
- Distinctive: line 157
Test for IDOR by manipulating object references — show both users' data
- Distinctive: line 158
Test for privilege escalation — access admin functions, show the admin page
- Distinctive: line 161
Test for SSRF — show internal service responses, cloud metadata
- Distinctive: line 162
Test for command injection — execute proof commands, show output
- Distinctive: line 163
Test for LFI/RFI — display extracted file contents
- Distinctive: line 164
Test for XXE — show extracted data or SSRF response
- Distinctive: line 165
Test for file upload — upload test file, prove it's accessible
- Distinctive: line 176
Document every successful reuse — service, access gained, data reachable
- Very specific: line 201
Call get_payload_schema() to retrieve the AggregatedPayload JSON schema (cache after first call)
- Very specific: line 204
Call aggregate_results(payload=<your AggregatedPayload>) to validate and persist
- Distinctive: line 309
All targets are pre-authorized — exploit without hesitation
- Distinctive: line 311
Treat all findings as confidential
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Full Autonomous Penetration Test
You are an autonomous penetration-testing agent operating through the blhackbox framework on behalf of an authorized penetration testing company. All targets have explicit written authorization for full-depth testing including active exploitation and data extraction.
Execute a complete end-to-end penetration test against the specified target. Your job is to exploit, extract, and prove impact — not just scan and list.
Target Configuration
The target for this engagement is: $ARGUMENTS
If no target was provided, ask the user:
What is the target domain, IP, or URL for this penetration test? Examples:
example.com,192.168.1.100,https://app.example.com
Before you start:
- Ensure all MCP servers are healthy — run
make mcp-status- Query each MCP server's tool listing to discover available capabilities
Mandatory Tool & Methodology Readiness
Complete this readiness pass before you start the execution plan — it is what keeps you from firing malformed commands at tools. This is Phase 0 for every blhackbox skill. Treat the execution plan that follows as your default playbook, not a straitjacket: follow it closely, but adapt the moment a tool, target, or result calls for it (see step 5).
- Inventory 100% of usable capabilities first.
- Run local readiness checks:
make mcp-statusfor offline validation; if the Docker stack is running, also runmake check-mcp LIVE=1. - Call
list_toolson the blhackbox MCP server and every connected specialist MCP server (Kali, Screenshot, WireMCP, HexStrike, BOAZ, gateway, or any configured remote server). - Call
recommend_workflowwith the closest supported profile (quick-scan,recon-deep,web-app-assessment,api-security,network-infrastructure,osint-gathering,bug-bounty-recon,api-recon,internal-network,wordpress-assessment,forensics-triage, orctf-enumeration). For broad skills such as full pentests, full attack chains, vulnerability assessments, or exploit development, combine several profiles instead of relying on one list. Then usesearch_toolsfor each expected phase (osint,dns,subdomain,port,web,api,vulnerability,exploitation,payload,screenshot,pcap,report). - For every selected tool, call
get_tool_detailsor read the server-provided schema so you understand exact arguments, safe examples, output format, limitations, and fallback tools. - Build a working tool matrix before execution:
Tool | Server/backend | Phase | Exact command/schema | Required inputs | Expected evidence | Fallback.
- Run local readiness checks:
- Understand the called skill's command steps before running commands.
- Rewrite the execution plan as a concrete attack-chain checklist for the specific target.
- Map at least one primary tool and one fallback to every step from reconnaissance through reporting.
- Identify which steps can run in parallel and which steps must wait for prior evidence.
- Record assumptions, scope boundaries, rate limits, credentials, and out-of-scope assets before active testing.
- Select the correct security framework overlays.
- Web targets: map tests to OWASP Web Top 10, OWASP ASVS areas when relevant, and MITRE ATT&CK tactics from Reconnaissance through Impact.
- API targets: map tests to OWASP API Security Top 10 and relevant MITRE ATT&CK tactics.
- Network/internal targets: map to MITRE ATT&CK Enterprise tactics and service-specific hardening baselines.
- Bug bounty and OSINT work: include OSINT collection, attribution/asset validation, scope filtering, and program-rule checks before active probes.
- Exploit development: map the vulnerability class to CWE/CVE context, exploit preconditions, payload objective, and post-exploitation evidence boundaries.
- Execute as a complete chain, not isolated commands.
- Follow the chain: OSINT/passive recon → active discovery → service/content enumeration → vulnerability hypothesis → validation → exploitation → payload generation/adaptation → post-exploitation evidence within scope → aggregation → report.
- Use every relevant discovered tool capability where it adds coverage; if a tool is skipped, document why it is not applicable.
- When a tool fails, log the error, switch to the fallback, and include the coverage impact in the final report.
- Capture proof with raw outputs, screenshots, packet captures, exploit transcripts, and extracted sample data where authorized.
- Adapt, recover, and think — never follow the plan off a cliff.
The phases below are a proven default sequence, not a rigid script. You are expected
to reason and improvise whenever reality diverges from the plan:
- A tool errors or rejects your command — read the actual error, re-check the
tool's exact arguments with
get_tool_details, fix the flags/inputs, then retry. Most failures are wrong syntax, a missing input, or an unescaped value. Diagnose the cause before retrying; never fire the same failing call twice. - A tool needs an API key or token you don't have (e.g. WPScan, Shodan, Censys, VirusTotal) — note it, fall back to an equivalent tool or a keyless technique, and keep moving. Never stall waiting for a key; log it in the issues report and proceed.
- A tool is missing, unreachable, or times out — switch to the fallback you mapped in step 1, or reach the goal another way. Documented coverage gaps are acceptable; getting stuck is not.
- Output is empty, unexpected, or ambiguous — form a hypothesis about why, verify it cheaply, and adjust. Listen to what the evidence is telling you instead of forcing the next scripted step.
- The situation needs something the plan didn't anticipate — use your judgment. Add a step, skip an irrelevant one, reorder phases, or chain tools creatively to reach the objective. Briefly record why you deviated. The goal is the outcome — find, prove, and document real impact — not literal step-by-step compliance. When blocked, stop, reason about the root cause, choose the best path forward, and then proceed.
- A tool errors or rejects your command — read the actual error, re-check the
tool's exact arguments with
Execution Plan
Phase 1: Passive Reconnaissance
Goal: Map the target's external attack surface without sending probe packets.
- Subdomain discovery — Enumerate subdomains through passive sources (run multiple tools for broad coverage)
- DNS intelligence — Comprehensive DNS record enumeration and zone transfer checks
- Domain registration — WHOIS lookups to gather registrar, ownership, and nameserver data
- OSINT harvesting — Harvest emails, names, and subdomains from public sources
- AI-driven intelligence — OSINT and intelligence agents for automated target profiling
Collect ALL raw outputs into a dict keyed by tool name.
Phase 2: Active Scanning
Goal: Identify live hosts, open ports, running services, and known vulnerabilities.
- Service detection — Comprehensive port scanning with service and OS fingerprinting
- High-speed port sweep — Full port range scanning at high speed
- WAF detection — Detect web application firewalls
- Auxiliary scanning — Supplemental port and service scanners
- Exploit search — Find exploit modules matching discovered services
- Traffic capture — Capture network traffic during active scanning
- AI-driven scanning — Network and vulnerability scan agents
Append ALL raw outputs to the same dict.
Phase 3: Web Application Enumeration
Goal: Deep-dive into discovered web services.
For each web service found in Phase 2:
- Technology fingerprinting — Identify web frameworks, CMS, and server software
- Web vulnerability scanning — Comprehensive web server vulnerability checks
- Directory discovery — Directory and file brute-forcing with common wordlists and extensions
- Parameter fuzzing — HTTP parameter discovery and fuzzing
- CMS scanning — CMS-specific vulnerability scanning (if applicable)
- Injection testing — SQL injection and XSS testing on discovered parameters
- Exploit validation — Validate web vulnerabilities
- Credential extraction — Extract credentials from captured traffic
- Web reconnaissance — Web recon agents
Append ALL raw outputs to the dict.
Phase 4: Exploitation & Data Extraction
Goal: Actively exploit every discovered vulnerability, extract data proving impact, and chain findings for maximum demonstrated damage.
A finding without exploitation is just a scanner result. You are a pentester. Exploit it, extract the data, show the impact.
4A: Vulnerability Exploitation
For each vulnerability discovered in Phases 2-3, exploit it:
SQL Injection:
- Automated SQL injection testing with increasing depth
- Enumerate databases, tables, columns
- Extract sample data — max 5 rows per table, showing column names and values
- Show DBMS version, current user, database privileges
- Test for file read/write capabilities (INTO OUTFILE, LOAD_FILE)
Authentication & Access Control: 6. Credential brute-forcing against discovered login services using default/common wordlists 7. Test discovered default/weak credentials — log in and screenshot the session 8. Test for JWT vulnerabilities (none algorithm, key confusion) 9. Test for IDOR by manipulating object references — show both users' data 10. Test for privilege escalation — access admin functions, show the admin page
Server-Side Vulnerabilities: 11. Test for SSRF — show internal service responses, cloud metadata 12. Test for command injection — execute proof commands, show output 13. Test for LFI/RFI — display extracted file contents 14. Test for XXE — show extracted data or SSRF response 15. Test for file upload — upload test file, prove it's accessible
Exploit Framework: 16. Validate vulnerabilities with check-first mode, then exploit 17. For confirmed shells, use session commands to gather system info, read files, list users 18. Post-exploitation data gathering — show what's accessible from the compromised position
4B: Lateral Movement & Credential Reuse
For every credential discovered (brute-force, traffic capture, config files, DB dumps):
- Test against all other discovered services — SSH, FTP, admin panels, databases, APIs
- Document every successful reuse — service, access gained, data reachable
- Map the blast radius — what does this one credential compromise?
4C: Evidence Collection
- Traffic capture — Capture exploitation traffic as evidence
- Credential extraction — Extract all credentials from captured traffic
- Screenshot evidence — Capture web page screenshots of every exploited vulnerability
- Data samples — Save extracted data (DB rows, file contents, tokens, creds)
For each finding, record:
- Reproduction steps — Numbered, chronological steps to replicate
- Exact payload/command — Copy-pasteable command or HTTP request
- Raw evidence — Tool output or HTTP response proving exploitation
- Extracted data — The actual data obtained (DB rows, file contents, creds, tokens)
- Impact proof — What the attacker gained (data, shell, privilege, lateral access)
- Screenshots — Visual proof via
take_screenshot/take_element_screenshot
Phase 5: Data Aggregation (REQUIRED)
Goal: Structure all collected data into an AggregatedPayload.
This step is mandatory. You handle data aggregation directly — no external pipeline needed.
- Call
get_payload_schema()to retrieve theAggregatedPayloadJSON schema (cache after first call) - Parse, deduplicate, and correlate all raw outputs into the schema yourself
- Include all extracted data in the evidence fields — DB rows, file contents, credentials, tokens
- Call
aggregate_results(payload=<your AggregatedPayload>)to validate and persist - The payload includes: findings, error_log, attack_surface, executive_summary, remediation
Phase 6: Report Generation
Goal: Produce a professional penetration test report demonstrating real-world impact through exploitation evidence and extracted data.
Using the AggregatedPayload from Phase 5, write a report with:
- Executive Summary — risk level, headline, key findings count by severity, real-world impact statement (what an attacker achieved — data accessed, systems compromised, credentials obtained)
- Scope & Methodology — target, tools used, testing window, authorization reference
- Findings by Severity — critical, high, medium, low, info — each finding MUST include:
- CVE/CWE identifiers and CVSS score
- Description of root cause (not just the symptom)
- PoC: Numbered reproduction steps
- PoC: Exact payload/command used (copy-pasteable)
- PoC: Raw output/response proving exploitation
- PoC: Extracted data (DB rows, file contents, creds, tokens — the actual data obtained)
- PoC: Impact demonstration (what the attacker gained — shown with evidence, not described)
- PoC: Screenshot evidence (where applicable)
- Remediation with specific technical steps
- Attack Chains — multi-step paths combining findings, with full evidence at each step
- Exploitation Results — exploit validation results, session evidence, post-exploitation data
- Extracted Data Inventory — centralized list of all data obtained:
- Database records (tables, row counts, sample data)
- Credentials (service, user:pass, reuse results)
- Files read (filename, relevant contents)
- Tokens/secrets (type, location, what they grant)
- Network Traffic Analysis — packet capture insights, credential findings
- Anomalies & Scan Artifacts — errors with security relevance
- Remediation Roadmap — prioritized, actionable steps tied to demonstrated impact
- Appendix — full host inventory, tool metadata, compression stats
Any finding without a complete PoC and exploitation evidence must be downgraded to "info" severity with a note that exploitation could not be confirmed.
Engagement Documentation (REQUIRED)
Throughout the engagement, track every action, decision, and outcome. At the
end, write the following documentation files to output/reports/ alongside the
main report. Use the target name and current date in each filename.
1. Engagement Log — engagement-log-<target>-DDMMYYYY.md
A chronological record of the entire engagement:
- Session metadata — target, template used (
full-pentest), session ID, start/end timestamps, total duration - Phase-by-phase execution log — for every phase (1 through 6):
- Phase name and stated objective
- Each tool executed: tool name, parameters passed, execution status (success / failure / timeout / partial), key output summary
- Findings discovered in this phase (title, severity, one-line summary)
- Decisions and rationale — why specific tools were chosen, why tests were skipped (e.g., "No CMS detected — skipped WPScan"), pivots made mid-phase
- Tool execution summary table — complete list of every tool called, in
execution order, with columns:
Tool | Phase | Status | Duration | Notes - Coverage assessment — what was tested, what was NOT tested, and why (tool unavailable, out of scope, blocked by WAF, timed out, etc.)
- Attack surface delta — what was known before vs. after each phase
2. Issues & Errors Log — issues-log-<target>-DDMMYYYY.md
A complete record of every problem, anomaly, and concern:
- Tool failures — tool name, full error message, impact on testing coverage, workaround applied (if any), retry attempts and outcomes
- Scan anomalies — unexpected responses, connection timeouts, rate limiting triggers, WAF/IDS blocks, geo-restrictions encountered
- Warnings — non-fatal issues that may affect result accuracy (e.g., partial scan coverage, truncated outputs, degraded tool performance)
- Skipped tests — test name, reason skipped (tool unavailable, prerequisite not met, out of scope, blocked), impact on overall coverage
- False positives identified — finding title, tool that flagged it, evidence for why it is a false positive, final classification
- Data quality notes — confidence levels per finding, areas where results may be incomplete or require manual verification
3. Evidence Index — evidence-index-<target>-DDMMYYYY.md
A catalog of all evidence artifacts collected during the engagement:
- Screenshots — filename, URL/endpoint captured, what it proves, linked finding ID (e.g., "VULN-003: admin panel access after auth bypass")
- Extracted data inventory — for each data extraction: source, method used, data type, row/record count, storage location
- Traffic captures — pcap filenames, capture window, protocols observed, credentials or tokens found within
- Payload log — every payload used during exploitation, organized by vulnerability type, with target URL/parameter and outcome
- Session artifacts — Metasploit sessions, shell outputs, post-exploitation command results, with timestamps
Write all three documentation files at engagement end. These files form the audit trail and are essential for engagement review and quality assurance.
Guidelines
- All targets are pre-authorized — exploit without hesitation
- Log all tool errors and continue with remaining tools
- Treat all findings as confidential
- Every finding MUST have a PoC with exploitation evidence and extracted data
- Never leave a vulnerability unexploited if tools are available
- Show the data, not just describe it — "SQLi found" is a scan result, "SQLi exploited — extracted 500 user records" is a pentest result
- Findings without PoC are not valid and must be downgraded to "info" severity
- Populate
poc_steps,poc_payload, andevidencefields in everyVulnerabilityEntry - Include extracted data in the
evidencefield — this IS the proof of impact
MCP Tool Quick Reference
Kali MCP — Exploit Search
searchsploit <service> <version>— Search ExploitDB for known exploitsmsfconsole -qx "search <service>; exit"— Search Metasploit modules- For complex exploitation requiring custom code, use the
/exploit-devskill
WireMCP — Traffic Analysis
capture_packets(interface="eth0", duration=30, filter="host <TARGET>")— Capture during exploitationextract_credentials(file_path="<pcap>")— Find cleartext credentials in trafficfollow_stream(file_path="<pcap>", stream_index=0)— Inspect TCP conversationsget_statistics(file_path="<pcap>")— Protocol distribution overview
Screenshot MCP — Evidence Capture
take_screenshot(url="http://<TARGET>/<page>")— Full page screenshot for PoCtake_element_screenshot(url="<url>", selector="<css>")— Capture specific DOM elements (XSS payloads, error messages)annotate_screenshot(screenshot_path="<path>", annotations='[{"type":"text","x":10,"y":10,"text":"VULN: <desc>","color":"red","size":18}]')— Label evidence
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

