recon
Skill0 starsChanged 44 days agoApache-2.0View on GitHub
Maps attack surface: network scanning, OSINT, subdomain enumeration, service fingerprinting, blockchain analysis, address profiling, contract discovery. Use when opening the recon phase or doing a standalone recon task. Full engagement? Start with engagement. Intel gaps needing cited depth go to research.
27 other projects use a version of this.
Adopted by
Most recently taken up by
- trebaud/skillstheir own version, first seen Nov 8, 2026
- venhdev/skillstheir own version, first seen Nov 8, 2026
- lohi-ai/babysittheir own version, first seen Nov 8, 2026
- LeonardiFranco/skillstheir own version, first seen Nov 8, 2026
- blamechris/chroxytheir own version, first seen Nov 8, 2026
- g-baskin/recontheir own version, first seen Nov 8, 2026
Used with
Projects with it also use reporting, web-pentest and 1 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
GitHubSkillreporting
Report formatting guidelines for gh-aw workflows (header levels, collapsible details, run-ID links)
Also in 3 projects that use this
samklee1Skillweb-pentest
Orchestrates authorized web app pentesting on Kali Linux using Opus sub-agents with difficulty-aware planning (TDA/EGATS), browser-first exploration, iterative verification, two-layer review (per-sub-agent + phase-level), optional cross-model gap audit (GPT/codex via codex-plugin-cc), and enforced KB updates. Trigger on: pentesting, penetration testing, web app security assessment, vulnerability assessment, OWASP testing, PTES, attack surface mapping, API security testing, pentest reporting, or 'help me test this app'. NOT for network-only pentesting, malware analysis, reverse engineering, or CTFs.
Also in 3 projects that use this
SentrySkillcreate-pr
Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.
Also in 3 projects that use this
Other versions27 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 27
- codexstar69/bug-hunter★ 546same name
- briiirussell/cybersecurity-skills★ 489same name
- gavraz/recon★ 263same name
- skyf0xx/gambit★ 29same name
- wycats/ai-plugin★ 19same name
- wycats/vscode-ai-plugin★ 19same name
- sophonfinance-wq/finance-automation-portfolio★ 16same name
- blamechris/chroxy★ 8same name
- g-baskin/recon★ 8same name
- franco-bianco/claude-skills★ 4same name
17 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- auditSkill
- coachSkill
- engagementSkill
- exploitSkill
- forensicsSkill
- learn-skillSkill
- osintSkill
- reportSkill
- researchSkill
- soc-dashboardSkill
- verifySkill
- wikiSkill
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 7 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 22 edited versions we read keep these.
7
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 54
Run scripts/recon-pipeline.sh for the standard sweep first — hand-rolled loops come only after the pipeline's output.
- Distinctive: line 67
Exit criteria: All open ports identified, services versioned, web tech fingerprinted, directories enumerated.
- Distinctive: line 137
Deviation rule: If a default tool is unavailable or rate-limited, substitute the next tool in the chain and log the substitution.
- Very specific: line 163
Am I in the right skill?: If the work drifted into another phase, hand off via ## Handoffs instead of continuing here.
- Distinctive: line 165
Evidence attached?: No finding leaves this skill without captured output.
- Distinctive: line 169
Version banners can be spoofed: Always confirm with behavioral testing before relying on version-specific exploits.
- Distinctive: line 170
Subdomain takeovers are common: Check for dangling CNAMES pointing to cloud services (S3, GitHub Pages, Heroku).
- Distinctive: line 172
Proxy contracts hide implementation: Check EIP-1967 storage slots before analyzing contract behavior.
- Distinctive: line 176
Web3 recon is read-only: Never send transactions during recon.
“Common” is measured: kept by at least 6 in 10 of the 22 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Security Recon
Reconnaissance and enumeration across web2 and web3 targets. Maps attack surface before active testing.
Constitutional Rules
- Authorization required — Verify written scope before any active scanning. Refuse out-of-scope targets immediately.
- Evidence over assertion — Every finding traces to captured tool output or on-chain data. No finding without a command log or transaction hash.
- Passive before active — Start with passive techniques that do not touch the target. Escalate to active only when necessary.
- Rate limiting by default — Use rate limiting on all active scans. Aggressive modes require explicit authorization.
- Structured output — All results use the output template. No prose-only findings.
- Chain context — Address formats overlap across chains. Always confirm chain before drawing conclusions.
Recon Process
Phase 1: Passive Reconnaissance
Gather intelligence without touching the target.
Web2 Passive Recon
1.1 Selector intelligence → people, emails, employees, breach data: load `osint` (it owns verification standards and OPSEC); recon consumes its output
1.2 DNS enumeration → records, zone transfer attempts, DNSSEC
1.3 Certificate transparency → crt.sh, certspotter
1.4 Exposure search → dorks for exposed documents and credentials (identity/breach questions go to `osint`)
1.5 Social media recon → tech stack only (people questions go to `osint`)
1.6 Wayback Machine → historical endpoints, deleted pagesExit criteria: Subdomain list compiled, tech stack identified, employee emails collected, historical endpoints documented.
Web3 Passive Recon
1.1 Chain identification → determine target chain(s)
1.2 Address identification → contract addresses, EOA addresses, token addresses
1.3 Label lookup → exchange, mixer, protocol tags
1.4 Contract verification → Etherscan/Solscan verification status
1.5 Protocol discovery → identify protocol type, version, dependencies
1.6 Historical activity → first deployment, upgrade history, known incidentsExit criteria: Chain(s) identified, addresses classified, contract verification status confirmed, protocol type determined.
Phase 2: Active Reconnaissance
Run scripts/recon-pipeline.sh for the standard sweep first — hand-rolled loops come only after the pipeline's output. Direct interaction with in-scope targets.
Web2 Active Recon
2.1 Host discovery → masscan (fast sweep)
2.2 Port scanning → nmap (detailed enumeration)
2.3 Service enumeration → nmap -sV -sC on open ports
2.4 Web fingerprinting → whatweb (level 1 default)
2.5 Directory enumeration → gobuster (medium wordlist)
2.6 Vulnerability scanning → nuclei (cves/ + exposure/)Exit criteria: All open ports identified, services versioned, web tech fingerprinted, directories enumerated.
Web3 Active Recon
2.1 Contract interaction → call view functions to map protocol state
2.2 Event log analysis → query event logs for activity patterns
2.3 Token flow mapping → trace token movements through protocol
2.4 Oracle dependency check → identify oracle contracts and update frequency
2.5 Admin role enumeration → identify owner, admin, pause roles
2.6 Upgrade mechanism scan → proxy patterns, implementation addressesExit criteria: Protocol state mapped, dependencies identified, admin roles documented, upgrade mechanisms assessed.
Phase 3: Attack Surface Mapping
Compile findings into an attack surface map.
| Category | Web2 | Web3 |
| Entry points | URLs, APIs, services | Contracts, functions, oracles |
| Trust boundaries | Auth, sessions, roles | Access control, upgrade keys |
| Data flows | User input → processing → storage | User tx → contract → state change |
| Dependencies | Libraries, APIs, CDNs | Oracles, tokens, other protocols |
| Exposure | Public, internal, authenticated | Public, owner, governance |
Exit criteria: Attack surface map complete with all categories populated.
Phase 4: Risk Indicators
Identify initial risk indicators for prioritization.
| Indicator | Web2 | Web3 |
| Outdated software | Version banners, CVE matching | Old compiler version, deprecated patterns |
| Misconfigurations | Default creds, open ports, permissive CORS | Uninitialized proxies, public admin functions |
| Sensitive data exposure | Debug endpoints, verbose errors | Unverified contracts, exposed storage |
| Known vulnerabilities | CVE databases, exploit-db | Known hack patterns, SWC registry |
Exit criteria: Risk indicators documented with severity hints.
Tool Selection
Web2 Tools
| Task | Default Tool | Command | Why |
| Fast port scan | masscan | masscan -p1-65535 <target> --rate=10000 | Fastest for large ranges |
| Detailed port scan | nmap | nmap -sV -sC -p- <target> | Service detection + scripts |
| Subdomain enum | subfinder | subfinder -d <domain> | Passive, fast |
| Directory enum | gobuster | gobuster dir -u <url> -w <wordlist> | Reliable, configurable |
| Web fingerprint | whatweb | whatweb -a 1 <url> | Quick tech identification |
| Vuln scan | nuclei | nuclei -u <url> -t cves/ | Template-based, comprehensive |
| OSINT | theHarvester | theHarvester -d <domain> -b all | Multi-source OSINT |
Web3 Tools
| Task | Default Tool | Command/URL | Why |
| EVM explorer | Etherscan | etherscan.io/address/<addr> | Most comprehensive labels |
| Solana explorer | Solscan | solscan.io/account/<addr> | Best program tagging |
| Multi-chain explorer | Blockscout | blockscout.com | Open-source, self-hostable |
| EVM decompilation | Heimdall | heimdall-rs | Fast EVM bytecode decompilation |
| Entity labels | Nansen | nansen.ai | Best-in-class wallet labeling |
| Risk scoring | TRM Labs | trmlabs.com | Compliance-grade risk engine |
| Simulation | Tenderly | tenderly.co | Transaction simulation and tracing |
| RPC (EVM) | Ankr/Alchemy | Public endpoints | Free tier, reliable |
| RPC (Solana) | Helius | helius.xyz | Enhanced transactions API |
Deviation rule: If a default tool is unavailable or rate-limited, substitute the next tool in the chain and log the substitution.
Cross-References
| Skill | When to Use |
engagement | Orchestration and phase management |
audit | Vulnerability identification from recon findings |
exploit | Target selection for exploitation |
verify | Verification of recon findings |
coach | Course correction when recon stalls |
wiki | Knowledge persistence across engagements |
Handoffs
Act on these transitions immediately — load the named skill with the skill tool, do not continue by hand:
- Recon complete → load
auditwith the attack surface map. - Target intel needs cited depth (vendor, protocol) → load
research. - People, company, or actor question → load
osint, notresearch. - A finding needs confirmation before it leaves recon → load
verify. - Stuck, looping, or off-track → load
coach. - Phase done → record the map and indicators in
wiki.
Mid-Work Checkpoints
Periodically verify:
- Am I in the right skill? If the work drifted into another phase, hand off via
## Handoffsinstead of continuing here. - Am I routing phase ends? Findings and maps move to other skills — never absorb them.
- Evidence attached? No finding leaves this skill without captured output.
Gotchas
- Version banners can be spoofed. Always confirm with behavioral testing before relying on version-specific exploits.
- Subdomain takeovers are common. Check for dangling CNAMES pointing to cloud services (S3, GitHub Pages, Heroku).
- Web3 contracts can be unverified. Unverified contracts require bytecode analysis. Do not assume functionality from ABI alone.
- Proxy contracts hide implementation. Check EIP-1967 storage slots before analyzing contract behavior.
- Same address, different chains. EVM-compatible chains use the same address format. Always confirm chain context.
- Rate limiting is essential. Aggressive scanning can trigger WAFs, block IPs, and alert defenders. Use rate limiting by default.
- Passive recon is not risk-free. Some passive techniques (DNS queries, certificate transparency) can be detected by sophisticated defenders.
- Web3 recon is read-only. Never send transactions during recon. Use view functions and event logs only.
Output Format
# Reconnaissance Report: [Target]
**Date:** YYYY-MM-DD
**Type:** [Web2/Web3/Mixed]
**Scope:** [In-scope targets]
**Tools:** [Tool + versions]
## Executive Summary
- Attack surface: [size and complexity]
- Key findings: [top 3-5 findings]
- Risk indicators: [count by severity]
## Attack Surface Map
### Entry Points
| Type | Target | Exposure | Notes |
|------|--------|----------|-------|
| ... | ... | ... | ... |
### Trust Boundaries
| Boundary | Mechanism | Strength | Notes |
|----------|-----------|----------|-------|
| ... | ... | ... | ... |
### Dependencies
| Dependency | Type | Risk | Notes |
|------------|------|------|-------|
| ... | ... | ... | ... |
## Findings
### [SEVERITY] Finding Title
- **Category:** [Web2/Web3]
- **Target:** [host/address/URL]
- **Description:** [What was found]
- **Evidence:** [Tool output or on-chain data]
- **Risk:** [Potential impact]
## Risk Indicators
| Indicator | Severity | Evidence |
|-----------|----------|----------|
| ... | ... | ... |
## Methodology
- Commands/queries executed (full list)
- Tools and versions
- Time window analyzed
- Scope decision logScripts
scripts/recon-pipeline.sh— Automated web2 recon pipelinescripts/address-analyzer.py— Automated web3 address classification and risk scoringscripts/subdomain-monitor.py— Monitor for new subdomains
References
references/web2-network-recon.md— Detailed web2 network scanning proceduresreferences/web2-osint-techniques.md— OSINT collection techniquesreferences/web3-chain-analysis.md— On-chain analysis proceduresreferences/web3-contract-discovery.md— Contract identification and verificationreferences/attack-surface-templates.md— Attack surface map templatesreferences/tool-cheatsheet.md— Quick reference for all recon tools
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.

