OSINT Methoden: Tools und Techniken für Open Source Intelligence
OSINT (Open Source Intelligence) bezeichnet das systematische Sammeln und Auswerten öffentlich verfügbarer Informationen für Sicherheits- und Reconnaissance-Zwecke. Dieser Artikel erklärt OSINT-Methoden für Unternehmensrecherche: DNS-Enumeration (dnsx, amass, subfinder), Google Dorking, Shodan/Censys, Certificate Transparency, Social-Media-OSINT, WHOIS-Analyse und passive Recon-Frameworks wie Maltego und SpiderFoot.
Inhaltsverzeichnis (7 Abschnitte)
OSINT (Open Source Intelligence) ist die Grundlage jedes professionellen Penetrationstests: Bevor ein Angreifer aktiv in ein System eindringt, verbringt er oft Stunden oder Tage damit, öffentlich verfügbare Informationen zu sammeln. Das Ziel: ein vollständiges Bild der Angriffsfläche ohne ein einziges Paket an das Zielnetzwerk zu senden. Was Angreifer sehen, müssen auch Verteidiger kennen.
OSINT-Framework und Phasen
OSINT Reconnaissance Framework:
Passive OSINT (ohne direkte Interaktion mit dem Ziel):
→ DNS-Informationen aus öffentlichen Quellen
→ WHOIS-Daten
→ Certificate Transparency Logs
→ Google Dorking
→ Shodan/Censys (gecachte Scans)
→ Soziale Medien und Unternehmenswebseiten
→ Job-Postings (Technologie-Stack erkennbar!)
→ Pastebin / Dark Web Leaks
→ Code-Repositories (GitHub, GitLab)
Semi-Passive OSINT (nicht direkt erkennbar):
→ DNS-Auflösung öffentlicher Records (A, MX, SPF, DMARC)
→ Certificate Transparency Log-Abfragen
→ Wayback Machine (archive.org)
→ Web-Crawling mit passivem Fingerprinting
Aktive Reconnaissance (direkt, erkennbar):
→ Port-Scanning (nmap)
→ Banner-Grabbing
→ Web-Technologie-Fingerprinting
→ WAF-Detection
→ Subdomain-Bruteforce (aktiv, DNS-Anfragen senden)
OSINT-Framework Kategorien:
osintframework.com: Kategorisierter Überblick aller Tools
Kategorien: Username, Email, Domain, IP/Network, Social Media,
Dark Web, Documents, Images, Phone, Business
DNS-Enumeration
DNS-Enumeration - Subdomains und Infrastruktur aufdecken:
Passive Subdomain-Enumeration (ohne DNS-Anfragen ans Ziel):
subfinder (Project Discovery):
subfinder -d example.com -o subdomains.txt
subfinder -d example.com -all -recursive -o subdomains.txt
# Quellen: Certificate Transparency, VirusTotal, Shodan, etc.
amass (OWASP):
amass enum -passive -d example.com -o amass-passive.txt
amass enum -active -d example.com -o amass-active.txt
amass db -names -d example.com # Aus amass-eigener DB
Certificate Transparency Logs:
# crt.sh - Alle Zertifikate für Domain abfragen:
curl -s "https://crt.sh/?q=%.example.com&output=json" | \
jq -r '.[].name_value' | \
sort -u | grep -v "*"
# crt.sh auch für Wildcard-Subdomains:
curl -s "https://crt.sh/?q=%.%.example.com&output=json" | \
jq -r '.[].name_value' | sort -u
DNS Brute Force (aktiv):
dnsx -l subdomains.txt -a -resp -o resolved.txt
# Tool: puredns (mit Wordlist)
puredns bruteforce wordlist.txt example.com -r resolvers.txt
DNS-Record-Typen analysieren:
# MX-Records (E-Mail-Infrastruktur):
dig MX example.com
# → Google Workspace? Microsoft 365? Eigener Mailserver?
# SPF, DMARC, DKIM:
dig TXT example.com | grep spf
dig TXT _dmarc.example.com
# → Zeigt E-Mail-Sicherheitskonfiguration (oder Fehlen davon!)
# NS-Records (Nameserver):
dig NS example.com
# → Cloudflare? AWS Route 53? Eigener NS?
# AXFR-Zone-Transfer versuchen (oft nicht erlaubt aber versuchen):
dig @ns1.example.com example.com AXFR
# Bei Erfolg: ALLE DNS-Records der Domain!
Google Dorking
Google Dorking - Sensible Informationen über Suchmaschinen:
Grundoperatoren:
site:example.com → Nur diese Domain
filetype:pdf → Nur PDFs
inurl:/admin → URL enthält /admin
intitle:"Index of /" → Directory-Listings
intext:"confidential" → Text im Dokument
-site:www.example.com → Diese Sub-Domain ausschließen
Praktische Dorking-Kombinationen:
# Subdomains finden:
site:*.example.com -site:www.example.com
# Login-Pages:
site:example.com inurl:login OR inurl:signin OR inurl:auth
# Konfigurationsdateien:
site:example.com filetype:env OR filetype:config OR filetype:cfg
# Fehler-Messages mit Stack-Traces:
site:example.com "stack trace" OR "exception" OR "debug"
# Open Redirects:
site:example.com inurl:redirect= OR inurl:url= OR inurl:return=
# Passwörter (oft in alten Dateien):
site:example.com filetype:txt password OR username
# Backup-Dateien:
site:example.com filetype:bak OR filetype:backup OR filetype:sql
# Exposed .git:
site:example.com inurl:/.git/config
# phpinfo():
site:example.com inurl:phpinfo.php
# Jenkins/CI-CD:
site:example.com inurl:jenkins OR inurl:gitlab OR inurl:bitbucket
Google Dorks Automation:
# ghdb-scraper (Google Hacking Database):
python3 ghdb.py -q "site:example.com" -d "vulnerability"
# GoogD0rker:
python3 googd0rker.py -q "site:example.com" -t web
Shodan und Censys
Shodan - Suchmaschine für verbundene Geräte:
Shodan-Grundsuchen:
# IP-Adresse direkt:
host: 203.0.113.1
# Nach ASN:
org:"Example GmbH"
asn:"AS12345"
# Nach Technologie:
product:"Microsoft IIS"
product:"Apache httpd" version:"2.4.51"
# Nach Port/Service:
port:3389 org:"Example GmbH" # RDP nach Org
port:22 country:DE # SSH in Deutschland
# Zertifikat-Informationen:
ssl.cert.subject.cn:"*.example.com"
ssl.cert.expired:true org:"Example GmbH" # Abgelaufene Certs!
Shodan CLI:
# Installation:
pip install shodan
shodan init YOUR_API_KEY
# Domain-Infos:
shodan domain example.com
# IP-Infos:
shodan host 203.0.113.1
# Download-Suche:
shodan search --fields ip_str,port,org "org:'Example GmbH'" \
--limit 1000 > shodan_results.txt
Censys (Alternative, mehr SSL/TLS-Fokus):
search.censys.io oder censys.io/api
# Python-API:
from censys.search import CensysHosts
h = CensysHosts()
results = h.search("ip_addresses.reverse_dns.reverse_dns:'example.com'")
# Alle IPs einer Organisation:
results = h.search("autonomous_system.organization_id:'NNNNNN'")
# Zertifikate:
from censys.search import CensysCertificates
c = CensysCertificates()
certs = c.search("parsed.subject.common_name:'*.example.com'")
Was man findet:
→ Vergessene Test-Server (example-test.example.com:8080)
→ Veraltete SSL-Zertifikate (bekannte CVEs)
→ Offene Admin-Panels (Grafana, Jenkins, Kibana)
→ Default-Credentials auf Netzwerkgeräten
→ Exposed Datenbanken (MongoDB, Elasticsearch, Redis)
GitHub und Code-Repositories
GitHub OSINT - Sourcecode-Leaks finden:
GitHub-Suche:
# Organisation suchen:
org:example-gmbh
# Sensible Dateien:
org:example-gmbh filename:.env
org:example-gmbh filename:config.json password
org:example-gmbh filename:docker-compose.yml
# API-Keys im Code:
org:example-gmbh "AWS_SECRET_ACCESS_KEY"
org:example-gmbh "AKIA" # AWS Key Prefix
org:example-gmbh "-----BEGIN RSA PRIVATE KEY-----"
org:example-gmbh "ghp_" # GitHub Personal Access Token
Automatisierte GitHub-Suche:
trufflehog (Secrets-Scanner):
trufflehog github --org=example-gmbh
trufflehog git https://github.com/example-gmbh/repo
gitleaks:
gitleaks detect --source . --report-path leaks.json
gitleaks detect --source https://github.com/example-gmbh/repo
gitrob:
gitrob analyze --github-access-token TOKEN \
--organization example-gmbh
Commits analysieren:
# git log durchsuchen (lokal):
git log --all -p | grep -i "password\|secret\|key\|token"
# git-secrets (verhindert das Committen von Secrets):
git secrets --install
git secrets --register-aws
Häufige Leaks:
→ AWS Access Keys (AKIA... Prefix)
→ Private SSH/TLS-Schlüssel
→ Datenbankpasswörter in .env-Dateien
→ API-Keys (Stripe, Twilio, SendGrid, etc.)
→ JWT-Secrets (HMAC-Key im Klartext)
→ Hardcodierte Produktions-Credentials in Tests
Social Engineering Reconnaissance
Social-Media und Unternehmens-OSINT:
LinkedIn:
→ Mitarbeiterliste der Zielorganisation
→ Technologie-Stack aus Job-Postings!
"Suchen Python-Entwickler mit Django und AWS-Erfahrung"
→ Technologie-Stack verraten
→ Email-Format ableiten (vorname.nachname@example.com?)
→ Organigramm / Entscheidungsstrukturen
LinkedIn OSINT Tools:
linkedin2username: Mitarbeiterlisten → E-Mail-Liste generieren
ScrapedIn / ProspectIn: Automatisiertes LinkedIn-Scraping
E-Mail-Enumeration:
hunter.io:
# API:
curl "https://api.hunter.io/v2/domain-search?domain=example.com&api_key=KEY"
→ E-Mail-Format + bekannte E-Mail-Adressen
emailhippo / verifalia:
→ E-Mail-Existenz prüfen ohne zu senden
WHOIS / Domain-Registrierung:
whois example.com
# → Registrant (oft anonymisiert), Registrar, Creation Date
# → Bei älteren Registrierungen: echte Kontaktdaten!
# Reverse WHOIS (gleicher Inhaber → andere Domains):
viewdns.info/reversewhois/?q=admin@example.com
# Domain-History:
domaintools.com / whoisology.com
Wayback Machine:
# Alte Versionen der Website:
web.archive.org/web/*/example.com
# Ältere Versionen finden oft:
→ Alte Mitarbeiter-Seiten mit echten E-Mails
→ Frühere Technologie-Versionen (ältere CMS, etc.)
→ Gelöschte sensible Seiten (intern, Dokumentation)
Job-Postings analysieren:
# Infos aus Stellenanzeigen:
"Erfahrung mit Fortinet FortiGate erwünscht" → Firewall-Hersteller bekannt!
"AWS Certified Solutions Architect" → AWS als Cloud-Provider
"SIEM-Erfahrung mit Splunk" → SIEM-System bekannt
"Kenntnisse in SAP ERP" → Business-Software
→ Angreifer kennt Technologie-Stack vor dem ersten Angriff!
OSINT-Frameworks und Automatisierung
OSINT-Plattformen und Automatisierung:
Maltego:
→ Grafische OSINT-Visualisierung und Korrelation
→ Transforms: automatisierte Datenabfragen (Shodan, Censys, etc.)
→ Community Edition: kostenlos (begrenzte Transforms)
→ Ideal für: Zusammenhänge visualisieren, Angriffspfade aufzeigen
SpiderFoot (Open Source):
# Installation:
pip install spiderfoot
python3 sf.py -l 127.0.0.1:5001
# CLI-Scan:
python3 sfcli.py -s example.com -t DOMAIN -m all -o json
# → Automatisch: Subdomains, IPs, E-Mails, Soziale Profile, Leaks
Über 200 Module integriert:
→ Shodan, Censys, VirusTotal
→ HaveIBeenPwned, Dehashed
→ Certificate Transparency
→ Google, Bing, DuckDuckGo
→ GitHub, GitLab
→ LinkedIn, Twitter (begrenzt)
Recon-ng:
# Modulares Recon-Framework:
recon-ng
[recon-ng]> marketplace install all
[recon-ng]> workspaces create example-gmbh
[recon-ng]> db insert domains
Domain: example.com
[recon-ng]> modules load recon/domains-hosts/hackertarget
[recon-ng]> run
# → Subdomains gefunden
theHarvester:
# Schnelle Email/Subdomain-Enumeration:
theHarvester -d example.com -l 500 -b google,bing,linkedin,shodan
OSINT-Report-Vorlage:
→ Ziel und Scope
→ Passive Findings (ohne Zielsystem-Kontakt)
→ Subdomain-Liste (+ aktive IPs)
→ E-Mail-Adressen (für Phishing-Simulation Scope)
→ Technologie-Stack-Analyse
→ Exponierte Services (Shodan)
→ Credential-Leaks (HIBP, DeHashed)
→ Empfehlungen: Was sollte unmittelbar bereinigt werden? Fragen zu diesem Thema?
Unsere Experten beraten Sie kostenlos und unverbindlich.
Über den Autor
M.Sc. IT-Sicherheit mit über 5 Jahren Erfahrung in offensiver Sicherheitsanalyse. Leitet die Durchführung von Penetrationstests mit Spezialisierung auf Web-Applikationen, Netzwerk-Infrastruktur, Reverse Engineering und Hardware-Sicherheit. Verantwortlich für mehrere Responsible Disclosures.