| FOTO | AUTO | EDV | AUDIO |

Maltego CSV Konverter (to_maltego.py)

Version: 1.0 | Pfad: /home/andre/Claude/Hacking/tools/to_maltego.py
Zweck: OSINT-Scan-Ergebnisse für Maltego aufbereiten

Überblick

to_maltego.py konvertiert die Scan-Outputs von email_recon.py und recon.sh in eine CSV-Datei, die direkt in Maltego importiert werden kann. Jede Zeile entspricht einer Maltego-Entity mit Typ, Wert und Metadaten.

Unterstützte Quellen

Quelle Format Beschreibung
email_recon.py JSON-Datei E-Mail OSINT: DNS, Sherlock, Holehe, HIBP, Gravatar, SPF/DMARC
recon.sh Report-Verzeichnis Domain OSINT: Subdomains, IPs, SSL-Certs, MX, nuclei-Findings

Erzeugte Entity-Typen

Maltego-Typ Befüllt aus
maltego.EmailAddress E-Mail-Adresse (Ziel)
maltego.Domain Ziel-Domain, SPF-Includes
maltego.DNSName Subdomains, MX-Hosts, SSL-SANs/CNs
maltego.IPv4Address A-Records, SPF-IPs, externe IPs
maltego.MXRecord MX-Records (DNS + E-Mail-Security)
maltego.Netblock SPF IP-Ranges (z. B. ip4:212.0.0.0/24)
maltego.Alias Sherlock-Usernamen, Holehe-Plattformen
maltego.URL Sherlock-Profil-URLs, nuclei-Findings, Gravatar
maltego.Phrase SPF/DMARC-Records, HIBP-Breaches, Flags
maltego.Banner SMTP-Banner
maltego.Person Gravatar-Displayname

Installation

Keine zusätzlichen Pakete nötig – nur Python 3 Standardbibliothek.

chmod +x /home/andre/Claude/Hacking/tools/to_maltego.py

Verwendung

Nur E-Mail-Scan

python3 /home/andre/Claude/Hacking/tools/to_maltego.py \
    --email-json /home/andre/Claude/Hacking/email_recon/ziel_osint.json

Nur Domain-Scan

python3 /home/andre/Claude/Hacking/tools/to_maltego.py \
    --domain-report /home/andre/Claude/Hacking/domain_recon/reports/example.com_20260321_120000

Beide Quellen kombinieren

python3 /home/andre/Claude/Hacking/tools/to_maltego.py \
    --email-json /home/andre/Claude/Hacking/email_recon/ziel_osint.json \
    --domain-report /home/andre/Claude/Hacking/domain_recon/reports/example.com_20260321_120000 \
    -o /home/andre/Claude/Hacking/tools/ziel_maltego.csv

Alle Parameter

Parameter Beschreibung
--email-json FILE JSON-Output von email_recon.py
--domain-report DIR Report-Verzeichnis von recon.sh
-o FILE Ausgabe-CSV (Standard: maltego_<timestamp>.csv)

Die CSV wird standardmäßig unter /home/andre/Claude/Hacking/tools/ gespeichert.

CSV-Format

"entity_type","value","label","source","notes"
"maltego.EmailAddress","ziel@example.com","ziel@example.com","email_recon",""
"maltego.Domain","example.com","example.com","email_recon/dns",""
"maltego.MXRecord","mail.example.com","MX [10] mail.example.com","email_recon/dns","Priority: 10"
"maltego.IPv4Address","93.184.216.34","93.184.216.34","email_recon/dns","A-Record von example.com"
"maltego.Alias","zielname@BugCrowd","zielname @ BugCrowd","email_recon/sherlock","https://bugcrowd.com/zielname"
Spalte Beschreibung Maltego-Mapping
entity_type Maltego Entity Class → Type
value Primärwert der Entity → Value
label Anzeigename im Graphen → Display Name
source Herkunft (Modul) → Note / Property
notes Zusatzinfos, URLs, Kontext → Note

Import in Maltego

Schritt-für-Schritt

  1. Maltego öffnen
  2. Oben: ImportImport Entities from Table
  3. CSV-Datei auswählen
  4. Trennzeichen: Komma (automatisch erkannt)
  5. Spalten-Mapping:
    • Spalte entity_typeType
    • Spalte valueValue
    • Spalte labelDisplay Name (optional)
    • Spalte notesNote (optional)
  6. Finish → Entities erscheinen im aktiven Graphen

Empfehlung: Neuen Graphen erstellen

Vor dem Import einen leeren Graphen anlegen: File → New Graph (Ctrl+N) → dann Import durchführen.

Relationships manuell ziehen

Der CSV-Import erzeugt isolierte Nodes. Beziehungen (Edges) müssen in Maltego manuell gezogen oder über Transforms erzeugt werden:

  • E-Mail-Node auf Domain-Node ziehen → Relationship setzen
  • IP auf Domain-Node → Resolves To
  • Alias auf EmailAddress → Belongs To

Start aus Claude heraus

Der komfortabelste Workflow: Claude führt Scan und Export in einem Schritt durch.

Beispiel: Vollständiger Workflow

In Claude Code eingeben:

Führe einen E-Mail-Scan für ziel@example.com durch,
danach einen Domain-Scan für example.com,
und exportiere alles für Maltego.

Claude führt sequenziell aus:

  1. email_recon.py → JSON
  2. recon.sh → Report-Verzeichnis
  3. to_maltego.py → CSV

Danach in Claude:

Wie viele Entities wurden exportiert?
Welche Entity-Typen dominieren und was bedeutet das für die Angriffsfläche?

Claude liest die CSV und gibt eine strukturierte Auswertung – inklusive Hinweise welche Nodes in Maltego besonders interessant für weitere Transforms sind.

Gezielte Nachfragen nach Export

  • „Welche der exportierten URLs sollte ich in Maltego mit 'Resolve to IP' aufdrehen?“
  • „Welche Aliases lohnen sich für weitere Sherlock-Runs in anderen Tools?“
  • „Gibt es IPs in mehreren Entities – deutet das auf Shared Hosting hin?“

Tipps für Maltego

Nützliche built-in Transforms nach dem Import

Entity Empfohlene Transform
maltego.Domain DNS to IP Address, Resolve to NS, MX
maltego.IPv4Address To Ports, Shodan (kostenpflichtig), Reverse DNS
maltego.EmailAddress To Domains, Hunter.io (API)
maltego.URL To Domain, Screenshot (kostenpflichtig)
maltego.Alias To EmailAddress (manuell erweitern)

Layout

Nach dem Import: Layouts → Organic oder Block für übersichtliche Darstellung bei vielen Nodes.

Dateipfade

Datei Beschreibung
to_maltego.py Hauptscript
maltego_<timestamp>.csv Automatisch benannte Export-Dateien
docs/maltego_konverter.txt Diese Anleitung