agentleFS
mahumadadmahumadad/quarry/skills/recon/osint/SKILL.md

osint

Skill1 starsChanged 12 days agoMITView on GitHub

Open-source intelligence beyond DNS/web surface: Shodan/Censys device search, social media and employee enumeration, and checking for leaked-credential exposure. Use early in recon alongside passive-recon, to characterize the organization's exposed footprint and people, not just its domains. Do NOT use for domain/subdomain-specific DNS work — that's passive-recon/dns-enumeration; this skill is org- and people-centric.

18 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use RECON, analyze 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.
  • jord0-cmdSkill

    RECON

    Deep technical research that persists. Use when: exploring new technologies, investigating frameworks, comparative analysis of tools, understanding complex systems, or any research task that should be saved for future reference. Invokes Claude's built-in research agent and auto-saves results to a knowledge base for retrieval across sessions.

    Also in 4 projects that use this

  • AnthropicSkill

    analyze

    Answer data questions -- from quick lookups to full analyses. Use when looking up a single metric, investigating what's driving a trend or drop, comparing segments over time, or preparing a formal data report for stakeholders.

    Also in 3 projects that use this

  • NVIDIASkill

    research

    Before designing a feature, research how comparable libraries solve the problem, check best practices, known pitfalls, and upstream changes. Use when starting a new feature, investigating an unfamiliar area, or the user asks to research something.

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 16 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Look specifically for commonly-misconfigured exposed services surfaced by either tool: exposed databases (Elasticsearch, MongoDB, Redis …

    line 46

“Common” is measured: kept by at least 6 in 10 of the 16 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Signals

  • Need to know what the organization exposes on the public internet beyond the known web app (IoT, exposed management interfaces, misconfigured databases).
  • Need employee names/roles for phishing-susceptibility assessment or credential-stuffing risk.
  • Checking whether the org's domain/employees appear in known breach dumps.

Prerequisites

  • Org name and domain(s) confirmed in scope.
  • Shodan/Censys API keys provisioned if using their CLI/API (free tiers are rate-limited and often insufficient for a real engagement).

Methodology

  1. Shodan search for the organization's exposed infrastructure — by org name, by domain, and by discovered IP ranges:
    shodan search "org:\"Example Corp\""
    shodan search "hostname:example.com"
    shodan host 1.2.3.4
    shodan search "net:1.2.3.0/24"
  2. Censys as a complementary/cross-check source (different crawl footprint than Shodan, often surfaces different hosts):
    censys search 'services.certificate.names: example.com' --index-type hosts
    censys view 1.2.3.4
  3. Look specifically for commonly-misconfigured exposed services surfaced by either tool: exposed databases (Elasticsearch, MongoDB, Redis with no auth), exposed management interfaces (Jenkins, Kibana, admin panels), and exposed IoT/OT devices:
    shodan search "org:\"Example Corp\" product:MongoDB"
    shodan search "org:\"Example Corp\" port:9200"      # Elasticsearch
    shodan search "org:\"Example Corp\" product:Jenkins"
  4. Employee enumeration via theHarvester (pulls from search engines, LinkedIn, PGP key servers, and more in one pass):
    theHarvester -d example.com -b all -l 500 -f harvester-results
  5. Manual LinkedIn reconnaissance for org structure, tech stack hints (job postings mentioning specific tools/frameworks), and employee names for the email-harvesting pattern work:
    site:linkedin.com/in "Example Corp"
    site:linkedin.com/in "Example Corp" "security" OR "IT" OR "DevOps"
    Job postings are a particularly high-value and under-used source — they often name exact internal tools, cloud providers, and even internal project codenames.
  6. Breach/leak exposure check for the organization's domain and any specific identified employee emails:
    curl -s "https://haveibeenpwned.com/api/v3/breacheddomain/example.com" \
      -H "hibp-api-key: $HIBP_KEY"
    Note: HIBP's domain-search API requires a paid key and proof of domain ownership for the client — use the client's own key/account for this, not a personal one, and only with their authorization since it involves their employees' data.
  7. Consolidate: org exposure list (Shodan/Censys hosts), employee list (theHarvester/LinkedIn), and breach exposure summary, feeding email-harvesting and github-dorking.

Tooling

shodan CLI (search, host, net: filters), censys CLI, theHarvester -b all, manual LinkedIn/job-board search, HaveIBeenPwned API (domain search requires client-owned key).

Validation gate

  • Every Shodan/Censys host cross-checked against scope.txt/org ownership before being treated as in-scope attack surface — org-name search can return hosts owned by unrelated third parties with similar names.
  • Employee data handled per opsec-discipline's data-handling rules — this is PII, store and transmit only through the client's designated secure channel.
  • Breach-exposure checks run only with the client's own authorized access, not a personal API key against their domain without clear authorization for that specific check.

Gotchas

  • Org-name search on Shodan/Censys returns false positives from similarly-named orgs, shared hosting, and third-party SaaS the org merely uses — verify ownership per scope-discipline before scanning or reporting any of it.
  • Employee enumeration output is personal data — treat retention/sharing with the same care as credentials or PII findings, per opsec-discipline.
  • theHarvester's search-engine sources degrade/break frequently as providers change their anti-scraping measures — don't assume -b all actually hit every source; check per-source output counts.
  • A breach-dump hit for an employee email doesn't mean the password is still valid — it's Inferred-tier risk context, not a demonstrated credential-stuffing finding until actually tested (and credential-stuffing testing needs its own explicit RoE sign-off).

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.