From 9f13ee4f962f16bcfe0d6eec53e29be465db4813 Mon Sep 17 00:00:00 2001 From: thomasciesla Date: Fri, 28 Nov 2025 09:16:31 +0100 Subject: [PATCH] README.md aktualisiert --- README.md | 341 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 339 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 59c96e6..0cea852 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,340 @@ -# domain_analyzer +# Domain Analyzer 🔍 -Findet alles mögliche über eine Domain herraus. \ No newline at end of file +Ein umfassendes Python-Tool zur Analyse von Domains und Mailservern. Findet heraus, wer wirklich hinter einer Domain steckt! + +## Features + +✅ **DNS-Analyse**: Alle wichtigen DNS-Records (A, AAAA, MX, NS, TXT, SOA, CAA, CNAME) +✅ **WHOIS-Informationen**: Automatische Erkennung von Subdomains und Prüfung der Hauptdomain +✅ **IP-Analyse**: Reverse DNS, ASN, Organisation, Geolocation +✅ **Email-Sicherheit**: SPF, DMARC, DKIM-Checks +✅ **Port-Scanning**: Erkennung offener Ports und Services +✅ **SSL/TLS-Zertifikate**: Aussteller, Gültigkeit, SANs +✅ **HTTP-Analyse**: Server-Informationen und Security-Headers +✅ **Subdomain-Enumeration**: Findet häufige Subdomains +✅ **Multi-Domain-Support**: Analysiere mehrere Domains gleichzeitig +✅ **Inhaber-Identifikation**: Klare Anzeige wer für die Domain verantwortlich ist + +## Installation + +### Arch Linux + +```bash +# System-Pakete +sudo pacman -S whois + +# Python-Pakete +pip install -r requirements.txt --break-system-packages +``` + +### Debian/Ubuntu + +```bash +# System-Pakete +sudo apt install whois + +# Python-Pakete +pip install -r requirements.txt +``` + +### Andere Systeme + +```bash +# Python-Pakete +pip install dnspython requests +``` + +## Verwendung + +### Einzelne Domain analysieren + +```bash +python3 domain_analyzer.py example.com +``` + +### Mehrere Domains analysieren + +```bash +# Als Argumente +python3 domain_analyzer.py example.com google.com github.com + +# Aus Datei (eine Domain pro Zeile) +python3 domain_analyzer.py -f domains.txt + +# Mit Verzögerung zwischen Domains (empfohlen bei vielen Domains) +python3 domain_analyzer.py -f domains.txt --delay 2.0 +``` + +### Ergebnisse speichern + +```bash +# Einzelne Domain als JSON +python3 domain_analyzer.py example.com -o result.json + +# Mehrere Domains in separaten JSON-Dateien +python3 domain_analyzer.py -f domains.txt --output-dir results/ +``` + +### Weitere Optionen + +```bash +# Ohne Farben (für Logs/Pipes) +python3 domain_analyzer.py example.com --no-color + +# Hilfe anzeigen +python3 domain_analyzer.py --help +``` + +## Domain-Datei Format + +Erstelle eine Textdatei mit einer Domain pro Zeile: + +```txt +example.com +google.com +github.com +# Kommentare werden ignoriert +subdomain.example.com +``` + +## Beispiel-Output + +``` +================================================================================ + DOMAIN ANALYSE: secure-tinyurl.com +================================================================================ + +[*] DNS Records + ├─ A: 1 Record(s) + 178.22.63.44 + ├─ MX: 2 Record(s) + 10 mail.example.com + 20 mail2.example.com + +[*] WHOIS Information + ├─ Registrant Organization: Awaretrain b.v. + ├─ Registrant Country: NL + ├─ Registrar: Hosting Concepts B.V. + ├─ Creation Date: 2018-06-15 + ├─ Expiration Date: 2026-06-15 + +================================================================================ + 🔍 DOMAIN-INHABER +================================================================================ + + ✓ Organisation: Awaretrain b.v. + ├─ Land: NL + ├─ Registrar: Hosting Concepts B.V. + +[*] Email-Sicherheit + ⚠ SPF: Nicht gefunden! + ✓ DMARC: Vorhanden + ✓ DKIM: default, google + +[*] Port-Scan (häufige Ports) + ✓ Port 80 (HTTP): OFFEN + ✓ Port 443 (HTTPS): OFFEN + +[*] SSL/TLS-Zertifikate + ├─ Port 443: Zertifikat gefunden + Aussteller: Let's Encrypt + Gültig bis: 2025-02-15 + +================================================================================ + 📋 ZUSAMMENFASSUNG VERANTWORTLICHKEIT +================================================================================ + + ✓ Domain-Inhaber: Awaretrain b.v. + ├─ Registrar: Hosting Concepts B.V. + ├─ Hosting: BIT BV +``` + +## Besondere Features + +### Subdomain-Handling + +Das Tool erkennt automatisch wenn eine Subdomain eingegeben wird und prüft die WHOIS-Informationen der Hauptdomain: + +```bash +# Analysiert jtl-software.secure-tinyurl.com +# Prüft aber WHOIS von secure-tinyurl.com +python3 domain_analyzer.py jtl-software.secure-tinyurl.com +``` + +### Umfassende Inhaber-Recherche + +Das Tool kombiniert verschiedene Quellen um den Inhaber zu identifizieren: +- WHOIS-Daten (Registrant Organization/Name) +- ASN/IP-Informationen (Hosting-Provider) +- Nameserver-Besitzer +- SSL-Zertifikat-Informationen + +### JSON-Export + +Alle Ergebnisse können als strukturiertes JSON exportiert werden für weitere Verarbeitung: + +```json +{ + "domain": "example.com", + "timestamp": "2025-11-28T10:30:00", + "dns": { + "A": ["93.184.216.34"], + "MX": ["10 mail.example.com"] + }, + "whois": { + "registrant_organization": ["Example Inc."], + "registrar": ["Example Registrar"] + }, + "ips": [...], + "ports": {...}, + "ssl_certificates": [...], + "email_security": {...} +} +``` + +## Häufig gescannte Ports + +Das Tool prüft folgende Ports: + +| Port | Service | +|------|---------| +| 21 | FTP | +| 22 | SSH | +| 25 | SMTP | +| 53 | DNS | +| 80 | HTTP | +| 110 | POP3 | +| 143 | IMAP | +| 443 | HTTPS | +| 465 | SMTPS | +| 587 | SMTP Submission | +| 993 | IMAPS | +| 995 | POP3S | +| 3306 | MySQL | +| 3389 | RDP | +| 5432 | PostgreSQL | +| 8080 | HTTP-Alt | +| 8443 | HTTPS-Alt | + +## Email-Sicherheits-Checks + +### SPF (Sender Policy Framework) +Prüft ob die Domain einen SPF-Record hat, der angibt welche Server berechtigt sind Emails zu senden. + +### DMARC (Domain-based Message Authentication) +Prüft die DMARC-Policy der Domain für Email-Authentifizierung. + +### DKIM (DomainKeys Identified Mail) +Testet häufige DKIM-Selektoren: `default`, `google`, `k1`, `k2`, `selector1`, `selector2`, `mail`, `dkim` + +## Tipps & Best Practices + +### Rate-Limiting vermeiden + +Bei der Analyse vieler Domains solltest du eine Verzögerung einbauen: + +```bash +python3 domain_analyzer.py -f domains.txt --delay 2.0 +``` + +### Privacy Protection + +Viele Domains verwenden WHOIS Privacy Protection. In diesen Fällen wird "REDACTED FOR PRIVACY" angezeigt. Das Tool filtert diese automatisch heraus und zeigt nur verfügbare Informationen an. + +### Subdomain-Enumeration + +Das Tool testet nur häufige Subdomains. Für umfassende Subdomain-Enumeration empfehlen sich spezialisierte Tools wie: +- `sublist3r` +- `amass` +- `subfinder` + +### Ergänzende Tools + +Für noch detailliertere Analysen können folgende Tools ergänzend verwendet werden: +- `nmap` - Umfassenderer Port-Scan +- `testssl.sh` - Detaillierte SSL/TLS-Analyse +- `dig` - Manuelle DNS-Abfragen +- `mxtoolbox.com` - Online-Tools für Email-Server-Tests + +## Troubleshooting + +### WHOIS-Fehler + +**Problem**: "WHOIS-Abfrage fehlgeschlagen" + +**Lösung**: +```bash +# Prüfe ob whois installiert ist +which whois + +# Falls nicht, installieren: +sudo pacman -S whois # Arch +sudo apt install whois # Debian/Ubuntu +``` + +### DNS-Fehler + +**Problem**: "NXDOMAIN" - Domain existiert nicht + +**Lösung**: Prüfe die Schreibweise der Domain. Keine `http://` oder `https://` verwenden, nur die Domain selbst. + +### Timeout-Fehler + +**Problem**: Timeouts bei Port-Scans oder WHOIS-Abfragen + +**Lösung**: +- Prüfe deine Internetverbindung +- Manche Domains/IPs blockieren Port-Scans +- Erhöhe die Verzögerung mit `--delay` + +### Import-Fehler + +**Problem**: `ModuleNotFoundError: No module named 'dns'` + +**Lösung**: +```bash +pip install dnspython requests --break-system-packages +``` + +## Rechtliche Hinweise + +⚠️ **Wichtig**: +- Verwende dieses Tool nur für Domains, für die du berechtigt bist +- Respektiere die Nutzungsbedingungen von WHOIS-Servern +- Exzessive Abfragen können zu IP-Blocks führen +- Port-Scanning ohne Erlaubnis kann rechtliche Konsequenzen haben +- Dieses Tool dient der Informationsbeschaffung für legitime Zwecke (Sicherheitsanalyse eigener Domains, Due Diligence, etc.) + +## Lizenz + +MIT License - Siehe LICENSE Datei für Details + +## Beiträge + +Pull Requests sind willkommen! Für größere Änderungen öffne bitte zuerst ein Issue um zu diskutieren was du ändern möchtest. + +## Support + +Bei Problemen oder Fragen öffne ein Issue auf GitHub. + +## Changelog + +### Version 1.0.0 (2025-11-28) +- Initiales Release +- DNS-Analyse +- WHOIS-Integration mit automatischer Hauptdomain-Erkennung +- IP-Analyse mit ASN-Lookup +- Email-Sicherheitschecks (SPF, DMARC, DKIM) +- Port-Scanning +- SSL/TLS-Zertifikat-Analyse +- HTTP-Header-Analyse +- Subdomain-Enumeration +- Multi-Domain-Support +- JSON-Export +- Farbiger Terminal-Output + +--- + +**Autor**: Erstellt mit Claude +**Sprache**: Python 3.7+ +**Abhängigkeiten**: dnspython, requests, whois (system package) \ No newline at end of file