Recon Security
This skill guides an agent through an authorized external pentest workflow: recon, normalization, active discovery, web and infrastructure checks, validation, scoped exploitation (when RoE allows), and reporting. Use only free/open-source tools unless the user explicitly opts into commercial services outside this skill.
Do not assume permission. Gate every active, invasive, or state-changing step on Pass 0. This skill is model-guided only: propose commands and workflows; the user or agent runs them when scope and mode allow. No bundled scripts ship with this skill.
Engagement lifecycle
Pass 0 Scope/RoE → Pass 1 Passive → Pass 2 Normalize → Pass 3 Active
→ Pass 4 Web + infra → Pass 5 Triage → Pass 6 Validation
→ Pass 7 Scoped exploitation (if approved) → Pass 8 Report
Mental model
- Recon maps what is exposed.
- Validation proves what matters with minimal reproducible evidence.
- Exploitation demonstrates impact only within written RoE — not unrestricted attack.
Prefer conservative, reproducible checks. One confirmed finding beats dozens of scanner lines.
Pass 0: scope and authorization
Establish before any active work:
- In-scope domains, subdomains, IPs, ASNs, apps, and environments (prod vs staging).
- Out-of-scope assets and forbidden techniques (brute force, DoS, data dump, lateral movement).
- Written authorization or explicit ownership.
- Scan intensity: passive only, light active, standard, or deep.
- Whether exploitation and credential testing are allowed.
- Evidence directory (
PROJECT_DIR, default ~/Projects/pentest-engagement). See references/environment-setup.md.
- Deliverable: command plan only, executed tests, or full report.
If authorization is unclear, stop at passive planning and ask.
Pass 1: passive recon
Build inventory from public sources only:
- DNS, WHOIS/RDAP, RIPEstat/BGPView, certificate transparency (
crt.sh, subfinder, amass -passive, assetfinder).
- Historical URLs (
gau, waybackurls, Common Crawl, public urlscan.io).
- Search dorks and public code references (no secret copying).
Use example commands from references/environment-setup.md and references/tools.md when the user wants executable steps.
Pass 2: normalize targets
Produce working lists under targets/:
domains.txt, in_scope_domains.txt, resolved_hosts.txt, web_targets.txt, ips.txt
needs-scope-confirmation.txt for uncertain assets
Deduplicate; drop unrelated CT names and out-of-scope SaaS unless approved.
Pass 3: active recon
Requires Pass 0 approval. Rate-limit all probes.
dnsx, httpx, nmap (top ports first), optional naabu / rate-limited masscan
wafw00f, testssl.sh or sslyze, nuclei (open templates; triage as leads)
Propose rate-limited active commands; save raw output under evidence/active/.
Pass 4: web app and infrastructure checks
Web applications
- Fingerprint headers, cookies, security headers, technologies.
- Misconfigurations:
.git, .env, backups, phpinfo, directory listing, robots.txt.
- Content/parameter discovery:
ffuf, feroxbuster, arjun, katana, hakrawler.
- Light automated probes;
sqlmap detection-only by default; dalfox for reflected XSS leads.
- Manual proxy review: OWASP ZAP or Burp Suite Community.
Walk through fingerprinting, misconfiguration checks, and light probes for each priority URL.
Infrastructure (when in scope)
Telecom, storage, and file services often appear on external pentests:
- SIP/VoIP: UDP/TCP 5060/5061,
nmap --script=sip-methods, OPTIONS probes. No call setup unless authorized.
- NAS/file exposure: ports 445, 139, 548, 873, 2049, 5000/5001, 8080;
smbclient -N -L, showmount -e. Document share permissions, not customer file contents.
Save SIP/NAS results under evidence/infra/.
Pass 5: triage and evidence
Classify every item:
| Class |
Meaning |
| Confirmed finding |
Reproduced with clear evidence and impact |
| Likely finding |
Strong signal; needs Pass 6 |
| Lead |
Interesting; not yet tested |
| False positive / OOS |
Drop from report |
Build a prioritized queue for validation. Store under evidence/triage/. Never paste secrets or bulk PII into reports.
Pass 6: validation
Turn leads into confirmed findings. Read references/validation.md.
- Import
web_targets.txt into Burp or ZAP; map auth and roles.
- Manually confirm nuclei/ffuf/sqlmap signals.
- Two-account testing for IDOR/BOLA; pair with
authz-security when code is available.
- Infrastructure: focused port/service re-checks; SIP/NAS proof without data theft.
PoC bar: numbered steps, request/response or screenshot, impact, fix.
Pass 7: scoped exploitation
Only when Pass 0 explicitly allows exploitation. Read references/exploitation-roe.md.
- Minimum proof of impact (one row, one harmless upload, one auth bypass with test accounts).
- No
--dump, persistence, lateral movement, or destructive actions unless contract permits.
- Remove test artifacts when cleanup is required.
- Stop and escalate if scope, production risk, or legal boundaries are unclear.
Pass 8: reporting
Use references/report-template.md. Include:
- Executive summary and scope
- Methodology by phase (passive, active, validation, exploitation if run)
- Findings by severity with reproduction and remediation
- Leads and limitations
- Remediation roadmap (immediate / short / long term)
Severity scale
- P0: Sensitive data exposure, unauthenticated admin/control, confirmed critical exploit path.
- P1: High-impact issue with limited preconditions; confirmed injection or authz break without mass extraction.
- P2: Medium exposure or hardening gap without confirmed exploit chain.
- P3: Informational, hygiene, or scan limitations.
Output format
[P1] exposed-admin-panel on https://admin.example.com
Evidence: httpx + manual browser review; headers in evidence/webapp/.
Impact: Public admin surface increases credential and exploit risk.
Fix: Restrict by VPN/IdP, enforce MFA, monitor access.
Reference files
references/tools.md — approved tools and commercial exclusions
references/checklist.md — full engagement checklist
references/environment-setup.md — macOS setup and directory layout
references/validation.md — manual validation and PoC bar
references/exploitation-roe.md — allowed/prohibited exploitation boundaries
references/report-template.md — final deliverable structure
What this skill won't do
- Require Shodan, Censys, DeHashed, IntelX, or Burp Pro.
- Treat scanner output as confirmed without Pass 6.
- Run exploitation, dumping, persistence, or lateral movement without explicit RoE approval.
- Bypass authorization or test out-of-scope assets.
1---2name: recon-security3description: Guide authorized external penetration testing from recon through validation and scoped exploitation using free and open-source tools. Use for domain/IP attack surface mapping, subdomain discovery, nmap/httpx/nuclei/ffuf workflows, web app testing, SIP/NAS checks, Burp/ZAP validation, PoC documentation, and pentest reporting without commercial APIs.4---5
6# Recon Security
7
8This skill guides an agent through an **authorized external pentest workflow**: recon, normalization, active discovery, web and infrastructure checks, validation, scoped exploitation (when RoE allows), and reporting. Use only free/open-source tools unless the user explicitly opts into commercial services outside this skill.
9
10Do not assume permission. Gate every active, invasive, or state-changing step on Pass 0. This skill is model-guided only: propose commands and workflows; the user or agent runs them when scope and mode allow. No bundled scripts ship with this skill.
11
12## Engagement lifecycle
13
14```text
15Pass 0 Scope/RoE → Pass 1 Passive → Pass 2 Normalize → Pass 3 Active
16 → Pass 4 Web + infra → Pass 5 Triage → Pass 6 Validation
17 → Pass 7 Scoped exploitation (if approved) → Pass 8 Report
18```
19
20## Mental model
21
22- **Recon** maps what is exposed.
23- **Validation** proves what matters with minimal reproducible evidence.
24- **Exploitation** demonstrates impact only within written RoE — not unrestricted attack.
25
26Prefer conservative, reproducible checks. One confirmed finding beats dozens of scanner lines.
27
28## Pass 0: scope and authorization
29
30Establish before any active work:
31
32- In-scope domains, subdomains, IPs, ASNs, apps, and environments (prod vs staging).
33- Out-of-scope assets and forbidden techniques (brute force, DoS, data dump, lateral movement).
34- Written authorization or explicit ownership.
35- Scan intensity: passive only, light active, standard, or deep.
36- Whether exploitation and credential testing are allowed.
37- Evidence directory (`PROJECT_DIR`, default `~/Projects/pentest-engagement`). See `references/environment-setup.md`.
38- Deliverable: command plan only, executed tests, or full report.
39
40If authorization is unclear, stop at passive planning and ask.
41
42## Pass 1: passive recon
43
44Build inventory from public sources only:
45
46- DNS, WHOIS/RDAP, RIPEstat/BGPView, certificate transparency (`crt.sh`, `subfinder`, `amass -passive`, `assetfinder`).
47- Historical URLs (`gau`, `waybackurls`, Common Crawl, public `urlscan.io`).
48- Search dorks and public code references (no secret copying).
49
50Use example commands from `references/environment-setup.md` and `references/tools.md` when the user wants executable steps.
51
52## Pass 2: normalize targets
53
54Produce working lists under `targets/`:
55
56- `domains.txt`, `in_scope_domains.txt`, `resolved_hosts.txt`, `web_targets.txt`, `ips.txt`
57- `needs-scope-confirmation.txt` for uncertain assets
58
59Deduplicate; drop unrelated CT names and out-of-scope SaaS unless approved.
60
61## Pass 3: active recon
62
63Requires Pass 0 approval. Rate-limit all probes.
64
65- `dnsx`, `httpx`, `nmap` (top ports first), optional `naabu` / rate-limited `masscan`
66- `wafw00f`, `testssl.sh` or `sslyze`, `nuclei` (open templates; triage as leads)
67
68Propose rate-limited active commands; save raw output under `evidence/active/`.
69
70## Pass 4: web app and infrastructure checks
71
72### Web applications
73
74- Fingerprint headers, cookies, security headers, technologies.
75- Misconfigurations: `.git`, `.env`, backups, `phpinfo`, directory listing, `robots.txt`.
76- Content/parameter discovery: `ffuf`, `feroxbuster`, `arjun`, `katana`, `hakrawler`.
77- Light automated probes; `sqlmap` detection-only by default; `dalfox` for reflected XSS leads.
78- Manual proxy review: OWASP ZAP or Burp Suite Community.
79
80Walk through fingerprinting, misconfiguration checks, and light probes for each priority URL.
81
82### Infrastructure (when in scope)
83
84Telecom, storage, and file services often appear on external pentests:
85
86- **SIP/VoIP**: UDP/TCP 5060/5061, `nmap --script=sip-methods`, OPTIONS probes. No call setup unless authorized.
87- **NAS/file exposure**: ports 445, 139, 548, 873, 2049, 5000/5001, 8080; `smbclient -N -L`, `showmount -e`. Document share permissions, not customer file contents.
88
89Save SIP/NAS results under `evidence/infra/`.
90
91## Pass 5: triage and evidence
92
93Classify every item:
94
95| Class | Meaning |
96|-------|---------|
97| Confirmed finding | Reproduced with clear evidence and impact |
98| Likely finding | Strong signal; needs Pass 6 |
99| Lead | Interesting; not yet tested |
100| False positive / OOS | Drop from report |
101
102Build a prioritized queue for validation. Store under `evidence/triage/`. Never paste secrets or bulk PII into reports.
103
104## Pass 6: validation
105
106Turn leads into confirmed findings. Read `references/validation.md`.
107
108- Import `web_targets.txt` into Burp or ZAP; map auth and roles.
109- Manually confirm nuclei/ffuf/sqlmap signals.
110- Two-account testing for IDOR/BOLA; pair with `authz-security` when code is available.
111- Infrastructure: focused port/service re-checks; SIP/NAS proof without data theft.
112
113PoC bar: numbered steps, request/response or screenshot, impact, fix.
114
115## Pass 7: scoped exploitation
116
117Only when Pass 0 explicitly allows exploitation. Read `references/exploitation-roe.md`.
118
119- Minimum proof of impact (one row, one harmless upload, one auth bypass with test accounts).
120- No `--dump`, persistence, lateral movement, or destructive actions unless contract permits.
121- Remove test artifacts when cleanup is required.
122- Stop and escalate if scope, production risk, or legal boundaries are unclear.
123
124## Pass 8: reporting
125
126Use `references/report-template.md`. Include:
127
128- Executive summary and scope
129- Methodology by phase (passive, active, validation, exploitation if run)
130- Findings by severity with reproduction and remediation
131- Leads and limitations
132- Remediation roadmap (immediate / short / long term)
133
134## Severity scale
135
136- **P0**: Sensitive data exposure, unauthenticated admin/control, confirmed critical exploit path.
137- **P1**: High-impact issue with limited preconditions; confirmed injection or authz break without mass extraction.
138- **P2**: Medium exposure or hardening gap without confirmed exploit chain.
139- **P3**: Informational, hygiene, or scan limitations.
140
141## Output format
142
143```
144[P1] exposed-admin-panel on https://admin.example.com
145 Evidence: httpx + manual browser review; headers in evidence/webapp/.
146 Impact: Public admin surface increases credential and exploit risk.
147 Fix: Restrict by VPN/IdP, enforce MFA, monitor access.
148```
149
150## Reference files
151
152- `references/tools.md` — approved tools and commercial exclusions
153- `references/checklist.md` — full engagement checklist
154- `references/environment-setup.md` — macOS setup and directory layout
155- `references/validation.md` — manual validation and PoC bar
156- `references/exploitation-roe.md` — allowed/prohibited exploitation boundaries
157- `references/report-template.md` — final deliverable structure
158
159## What this skill won't do
160
161- Require Shodan, Censys, DeHashed, IntelX, or Burp Pro.
162- Treat scanner output as confirmed without Pass 6.
163- Run exploitation, dumping, persistence, or lateral movement without explicit RoE approval.
164- Bypass authorization or test out-of-scope assets.