跳到主要内容
知仓学习社ZHICANG

recon-osint

Use when mapping a target's external attack surface or gathering OSINT — subdomain enumeration, attack-surface mapping (httpx/katana/JS secrets), su…

读凭据执行命令读文件联网写文件严重 1 · 高危 13hypnguyen1209/offensive-claude

它会碰到什么

扫了多少15 个文本文件,116 KB
它会碰到什么读凭据执行命令读文件联网写文件
命中总数95 处
命中统计严重 1 · 高 13 · 中 47 · 低 13
逐条看命中(14 条严重或高危)
  • 严重 references/cloud-saas-recon.md:19cred-paths
    3. **Source code** — developers and third-party vendors leak `.env`, keys, and connection strings
  • scripts/breach_intel.py:96cred-envread
    for p in os.environ.get("PATH", "").split(os.pathsep)) and \
  • scripts/breach_intel.py:97exec-spawn
    not subprocess.run(["bash", "-lc", "command -v theHarvester"],
  • scripts/breach_intel.py:102exec-spawn
    subprocess.run(["theHarvester", "-d", domain, "-b", "all", "-f", jf],
  • scripts/breach_intel.py:219cred-envread
    key = os.environ.get("HIBP_API_KEY")
  • scripts/breach_intel.py:229cred-envread
    du, dk = os.environ.get("DEHASHED_EMAIL"), os.environ.get("DEHASHED_API_KEY")
  • scripts/breach_intel.py:229cred-envread
    du, dk = os.environ.get("DEHASHED_EMAIL"), os.environ.get("DEHASHED_API_KEY")
  • scripts/cloud_asset_enum.py:179exec-spawn
    subprocess.run(cmd, stdout=f, stderr=subprocess.DEVNULL, env=env)
  • scripts/cve_prioritizer.py:153cred-envread
    ap.add_argument("--nvd-key", default=os.environ.get("NVD_API_KEY"))
  • scripts/js_secret_hunter.py:44cred-envread
    UA = os.environ.get("HTTPX_UA",
  • scripts/recon_orchestrator.py:33cred-envread
    UA = os.environ.get("HTTPX_UA",
  • scripts/recon_orchestrator.py:48exec-spawn
    p = subprocess.run(cmd, stdout=fh, stderr=subprocess.DEVNULL)
  • scripts/recon_orchestrator.py:50exec-spawn
    p = subprocess.run(cmd, stderr=subprocess.DEVNULL)
  • scripts/recon_orchestrator.py:184exec-spawn
    subprocess.run(["gau", "--threads", "5", "--subs"], stdin=fin, stdout=fout,

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Reconnaissance & OSINT

When to Activate

  • A new engagement begins and you need a full external attack-surface map for a set of root domains / ASNs.
  • Expanding scope: pivoting from one discovered asset (subdomain, IP block, cloud account) to the rest of the estate.
  • Hunting dangling DNS / subdomain-takeover candidates, including S3 buckets referenced by CI/CD assets.
  • Building a target profile for social engineering / initial access (emails, usernames, breach + infostealer exposure).
  • Discovering leaked secrets in public GitHub/GitLab orgs and exposed cloud storage.
  • Triaging which discovered CVEs actually matter (KEV + EPSS + exposure) before weaponization.

Technique Map

| Technique | ATT&CK | CWE | Reference | Script |

|-----------|--------|-----|-----------|--------|

| Passive subdomain enum (subfinder/amass/CT logs) | T1590.002, T1596.001 | CWE-200 | references/subdomain-discovery.md | scripts/recon_orchestrator.py |

| DNS brute / permutation / resolution (puredns/alterx/dnsx) | T1595.002, T1590.002 | CWE-200 | references/subdomain-discovery.md | scripts/recon_orchestrator.py |

| ASN → CIDR → reverse-DNS expansion | T1590.005, T1596.005 | CWE-200 | references/subdomain-discovery.md | scripts/recon_orchestrator.py |

| HTTP probing + tech fingerprint (httpx) | T1595.002, T1592.002 | CWE-200 | references/attack-surface-mapping.md | scripts/recon_orchestrator.py |

| Headless crawling + archive URLs (katana/gau) | T1595.002, T1593.003 | CWE-200 | references/attack-surface-mapping.md | scripts/js_secret_hunter.py |

| JavaScript endpoint / secret extraction | T1593.003, T1552.001 | CWE-540 | references/attack-surface-mapping.md | scripts/js_secret_hunter.py |

| Subdomain takeover (dangling CNAME/NS) | T1583.001, T1584.001 | CWE-350 | references/subdomain-takeover.md | scripts/subdomain_takeover.py |

| Deleted-S3 takeover → supply-chain pivot | T1583.001, T1195.002 | CWE-350 | references/subdomain-takeover.md | scripts/subdomain_takeover.py |

| Multi-cloud bucket/blob enum (cloud_enum) | T1580, T1596.005 | CWE-732 | references/cloud-saas-recon.md | scripts/cloud_asset_enum.py |

| Azure tenant outsider recon (AADInternals) | T1590.001, T1589 | CWE-200 | references/cloud-saas-recon.md | scripts/cloud_asset_enum.py |

| GitHub/GitLab dorking + secret scanning | T1593.003, T1213.003 | CWE-540 | references/cloud-saas-recon.md | scripts/cloud_asset_enum.py |

| Email/username harvesting (theHarvester) | T1589.002, T1591 | CWE-200 | references/breach-credential-intel.md | scripts/breach_intel.py |

| Breach + infostealer credential intel (HIBP/DeHashed) | T1589.001, T1596 | CWE-522 | references/breach-credential-intel.md | scripts/breach_intel.py |

| CVE enrichment + prioritization (NVD/EPSS/KEV) | T1592.002, T1596 | CWE-1395 | references/cve-exploit-intel.md | scripts/cve_prioritizer.py |

| Shodan InternetDB exposure → CVE mapping | T1596.005, T1595.002 | CWE-200 | references/cve-exploit-intel.md | scripts/cve_prioritizer.py |

Quick Start

export DOMAIN=target.com
# 0. Validate resolvers once (puredns needs a clean list)
dnsvalidator -tL https://public-dns.info/nameservers.txt -threads 100 -o resolvers.txt

# 1. Full discovery + probe + crawl + takeover + nuclei, JSONL out (see orchestrator)
python3 scripts/recon_orchestrator.py -d $DOMAIN -o out/ --resolvers resolvers.txt --nuclei

# 2. JS/endpoint + secret hunting over live hosts
python3 scripts/js_secret_hunter.py -l out/httpx_live.txt -o out/js/

# 3. Dangling-DNS / subdomain-takeover triage
python3 scripts/subdomain_takeover.py -l out/all_subdomains.txt -o out/takeovers.jsonl

# 4. Cloud + code recon (buckets, Azure tenant, GitHub secrets)
python3 scripts/cloud_asset_enum.py -k $DOMAIN --company target --azure-domain $DOMAIN --gh-org target

# 5. People + breach/infostealer intel
python3 scripts/breach_intel.py --domain $DOMAIN --harvest --hibp --dehashed

# 6. Triage CVEs from fingerprints → KEV/EPSS/exposure ranked
python3 scripts/cve_prioritizer.py --from-httpx out/httpx_live.txt --ip-file out/ips.txt -o out/cve_ranked.jsonl

OPSEC & Detection (summary)

| Technique | Telemetry / IOC | Detection (Sigma/EDR) | OPSEC note |

|-----------|-----------------|------------------------|------------|

| Passive enum (CT/API) | None on target; queries hit 3rd-party APIs | Target cannot see it; CT-log monitoring (certstream) detects new certs only | Fully passive — prefer for stealth; no target traffic |

| DNS brute / resolution | Burst of NXDOMAIN/A queries to authoritative + resolvers | DNS firewall: high-volume distinct-label rate per source IP; Zeek dns.cc/NXDOMAIN ratio | Throttle -rate, rotate resolvers, never brute a single auth NS directly |

| httpx / katana probing | Spike of HTTP(S) requests, odd UA, favicon/JARM fetches | WAF/CDN: request-rate + UA anomaly; access-log User-Agent: httpx/katana | Set custom UA, low -rl, route via proxy pool / cloud egress |

| Subdomain takeover check | HTTP GET to dangling host (lands on 3rd-party) | 3rd-party provider logs; CT for new cert on claimed host | Verify with passive fingerprint before any claim; claiming is loud |

| Cloud bucket enum | DNS + HTTP to .s3/blob/storage.googleapis | Cloud provider access logs; GuardDuty Discovery:S3/ | Hits provider, not target; still rate-limited / loggable |

| Azure tenant recon | Requests to login.microsoftonline.com | Entra sign-in/audit logs do not see unauth realm probes | getuserrealm/OpenID are unauth & invisible to tenant |

| GitHub/GitLab dorking | API/search queries from your token | GitHub audit log (only org members'); secret-scanning alerts | Use a throwaway token; respect rate limits to avoid bans |

| Breach/infostealer lookup | 3rd-party API calls (HIBP/DeHashed) | None on target | Handle PII per ROE/GDPR; document lawful basis |

| CVE enrichment | NVD/EPSS/KEV/Shodan API calls | None on target | Map exposure to in-scope assets only |

Deep Dives

  • references/subdomain-discovery.md — Passive sources + CT logs, puredns/massdns resolution, alterx permutations, ASN→CIDR→PTR expansion, wildcard handling.
  • references/attack-surface-mapping.md — httpx enrichment (-td -favicon -jarm -asn), katana headless/authenticated crawling, gau/wayback archive mining, JS endpoint + secret extraction, nuclei triage of the live set.
  • references/subdomain-takeover.md — Dangling-DNS theory, can-i-take-over-xyz fingerprints, subzy/baddns/nuclei detection, the 2024-2025 deleted-S3 → CI/CD supply-chain pivot, NS-delegation takeover.
  • references/cloud-saas-recon.md — cloud_enum multi-cloud, AADInternals/MicroBurst Azure tenant + blob recon (incl. the June-2025 Get-AADIntTenantDomains patch), GrayhatWarfare, GitHub/GitLab dorking with trufflehog/gitleaks/noseyparker.
  • references/breach-credential-intel.md — theHarvester 4.x, HIBP API v3 (ALIEN TXTBASE), DeHashed, infostealer-log intel (Snowflake-style aged creds), username/email format derivation, password-pattern modeling.
  • references/cve-exploit-intel.md — NVD 2.0 API + the 2026 selective-enrichment shift, EPSS v4, CISA KEV, Shodan InternetDB, searchsploit/nuclei, the KEV×EPSS×exposure prioritization stack.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。