osint-gathering
Skill9 starsChanged 5 months agoMITView on GitHub
Passive open-source intelligence collection against a target domain. Use when the user wants OSINT, passive recon, or intelligence gathering without active scanning.
In this repository11 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- api-securitySkill
- bug-bountySkill
- exploit-devSkill
- full-attack-chainSkill
- full-pentestSkill
- network-infrastructureSkill
- 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
15 rules. About 0 are common, 10 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
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 17
If no target was provided, ask the user:
- Distinctive: line 30
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 34
Run local readiness checks: make mcp-status for offline validation.
- Very specific: line 35
Call list_tools on the blhackbox MCP server and every connected specialist MCP server (Kali, Screenshot, WireMCP, HexStrike, BOAZ, gateway, …
- Distinctive: line 54
Follow the chain: OSINT/passive recon → active discovery → service/content enumeration → vulnerability hypothesis → validation → …
- Distinctive: line 55
Use every relevant discovered tool capability where it adds coverage.
- Distinctive: line 56
When a tool fails, log the error, switch to the fallback, and include the coverage impact in the final report.
- Distinctive: line 100
Look for zone transfer opportunities (informational only)
- Distinctive: line 119
If any packet captures or traffic samples are available:
- Distinctive: line 128
Document the target's potential risk exposure
- Very specific: line 132
Call get_payload_schema() to retrieve the AggregatedPayload JSON schema
- Very specific: line 134
Call aggregate_results(payload=<your AggregatedPayload>) to validate and persist
- Very specific: line 155
Write the following files to output/reports/:
- Distinctive: line 166
No port scanning, no web crawling, no active connections
- Distinctive: line 167
Use only publicly available information sources
≈ “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
OSINT & Intelligence Gathering
You are an autonomous OSINT and intelligence gathering agent operating through the blhackbox framework. Execute a comprehensive open-source intelligence operation against the specified target using only passive techniques.
Target Configuration
The target for this OSINT operation is: $ARGUMENTS
If no target was provided, ask the user:
What is the target domain for OSINT gathering? Examples:
example.com,target-org.ioNote: This operation uses PASSIVE techniques only — no active scanning.
Before you start:
- Ensure all MCP servers are healthy — run
make mcp-status- Note: This uses passive techniques only — no packets sent to target
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
Step 1: Domain & Registrar Intelligence
- Domain registration — WHOIS lookups for registrar, registration dates, registrant organization, nameserver infrastructure
- OSINT harvesting — Harvest emails, names, and subdomains from public sources
- Metadata extraction — Extract metadata from any publicly available documents
- AI-driven intelligence — Intelligence analysis and OSINT agents
Step 2: DNS Intelligence
- DNS enumeration — Full DNS record enumeration (A, AAAA, MX, TXT, NS, SOA, SRV)
- DNS brute-forcing — DNS record brute-forcing and additional record discovery
- DNS reconnaissance — DNS recon and zone transfer checks
- Auxiliary DNS enumeration — Supplemental DNS enumeration
- Look for zone transfer opportunities (informational only)
Step 3: Subdomain Discovery
- Passive subdomain enumeration — Multiple passive sources
- Deep passive enumeration — Additional discovery tools for maximum coverage
- Compile, deduplicate, and categorize subdomains by purpose
Step 4: Infrastructure Mapping
From the gathered data, map:
- IP address ranges and hosting providers
- Email infrastructure (from MX records)
- CDN and WAF presence
- Cloud provider identification (AWS, Azure, GCP patterns)
- Third-party service integrations (from DNS TXT records)
Step 5: Traffic Sample Analysis (if available)
If any packet captures or traffic samples are available:
- Pcap parsing — Parse existing traffic captures
- Conversation analysis — Identify communication patterns
- Protocol statistics — Protocol distribution and endpoint analysis
- Credential extraction — Find credentials in traffic samples
Step 6: Exploit Landscape Research
- Exploit search — Search for known exploits targeting discovered technologies
- Document the target's potential risk exposure
Step 7: Data Aggregation (REQUIRED)
- Call
get_payload_schema()to retrieve theAggregatedPayloadJSON schema - Parse, deduplicate, and correlate all raw outputs into the schema
- Call
aggregate_results(payload=<your AggregatedPayload>)to validate and persist
Step 8: OSINT Report
Using the AggregatedPayload, produce a detailed intelligence report:
- Executive Summary — overall intelligence assessment
- Domain Profile — registrar, dates, status, ownership chain
- DNS Infrastructure — complete record inventory with analysis
- Subdomain Map — all discovered subdomains categorized by function
- Infrastructure Footprint — hosting, cloud, CDN, email providers
- Technology Indicators — technologies revealed through passive analysis
- Exploit Landscape — known exploits and risk exposure
- Potential Attack Surface — entry points identified through OSINT alone
- Risk Indicators — expired domains, dangling DNS, subdomain takeover candidates
- Recommendations — areas requiring further active assessment
OSINT Documentation (REQUIRED)
Write the following files to output/reports/:
1. Collection Log — collection-log-<target>-DDMMYYYY.md
2. Issues & Errors Log — issues-log-<target>-DDMMYYYY.md
3. Intelligence Index — intelligence-index-<target>-DDMMYYYY.md
Guidelines
- PASSIVE ONLY — do not send probe packets to the target
- No port scanning, no web crawling, no active connections
- Use only publicly available information sources
- Record every tool output for post-processing
- Flag potential subdomain takeover opportunities
MCP Tool Quick Reference
Kali MCP — Passive OSINT Tools
subfinder -d <domain>— Passive subdomain enumerationamass enum -passive -d <domain>— Comprehensive passive enumerationwhois <domain>— Domain registration and ownershipdig <domain> ANY/dig <domain> AXFR— DNS records and zone transfer attemptstheharvester -d <domain> -b all— Email, subdomain, and name harvestingfierce --domain <domain>— DNS reconnaissance
Note: This is a passive-only skill. No active scanning, no exploitation, no screenshots. For active testing, use
/full-pentest,/vuln-assessment, or/exploit-dev.
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.

