
Extrahiert schnell IPs, E-Mail-Adressen, Hashes, Dateien, Kreditkarten, Sozialversicherungsnummern und vieles mehr aus Text.
DataSurgeon (ds) ist ein vielseitiges Werkzeug, das für Incident Response, DLP, Penetrationstests und CTF-Herausforderungen entwickelt wurde. Es ermöglicht die Extraktion verschiedener Arten sensibler Informationen, darunter E‑Mails, Telefonnummern, Hashes, Kreditkarten, URLs, IP‑Adressen, MAC‑Adressen, SRV‑DNS‑Einträge und vieles mehr!
Eine Anleitung zur Verwaltung von Plugins finden Sie hier.
Dieses Update bringt ein Plugin‑Verwaltungssystem für DataSurgeon. Sie können jetzt Plugins mit den Optionen --add, --remove und --list hinzufügen, entfernen und auflisten.
Ich habe auch ein neues Plugin hinzugefügt, ds-winreg-plugin, das Windows‑Registrierungspfade finden kann.
Um ein neues Plugin hinzuzufügen, verwenden Sie --add <URL>, wobei die URL ein GitHub‑Repository mit einer plugins.json-Datei ist. Um ein Plugin zu entfernen, verwenden Sie --remove <URL>. Verwenden Sie die Option --list, um alle Ihre Plugins anzuzeigen.
Sobald ein Plugin hinzugefügt wurde, können Sie es als Argument in DataSurgeon verwenden. Der Name des Arguments ist der „Argument Long Name“ in der plugins.json-Datei des Plugins.
Der Schnellinstaller kann auch zum Aktualisieren von DataSurgeon verwendet werden.
Installieren Sie Rust und GitHub und STARTEN SIE DANN IHR TERMINAL NEU.
read -p "Möchten Sie 'ds' zu Ihrem lokalen Binärverzeichnis hinzufügen? Dadurch kann 'ds' von jedem Ort in Ihrem Terminal ausgeführt werden. (j/n) " response && wget -q -O - https://raw.githubusercontent.com/Drew-Alleman/DataSurgeon/main/install/install.sh | bash -s -- "$response"
Geben Sie die folgende Zeile in einem erhöhten PowerShell‑Fenster ein.
IEX (New-Object Net.WebClient).DownloadString("https://raw.githubusercontent.com/Drew-Alleman/DataSurgeon/main/install/install.ps1")
Starten Sie Ihr Terminal neu, und Sie können ds von der Befehlszeile aus verwenden.
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/Drew-Alleman/DataSurgeon/main/install/install.sh | sh

Hier verwende ich wget, um eine Anfrage an stackoverflow zu stellen, und leite dann den Textkörper an ds weiter. Die Option -F listet alle gefundenen Dateien auf. Mit --clean wird zusätzlicher Text entfernt, der möglicherweise zurückgegeben wurde (z. B. zusätzliches HTML). Das Ergebnis wird dann an uniq weitergeleitet, das alle nicht eindeutigen gefundenen Dateien entfernt. Falls gewünscht, können Sie die Warnmeldung oben „Reading standard input..“ mit -S entfernen.
$ wget -qO - https://www.stackoverflow.com | ds -F --clean | uniq

Hier extrahiere ich alle MAC‑Adressen, die in der Protokolldatei von autodeauth gefunden wurden, mit der Option -m. Die Option --hide blendet die Kennzeichnungszeichenfolge vor den Ergebnissen aus. In diesem Fall wird „mac_address: “ aus der Ausgabe ausgeblendet. Die Option -T wird verwendet, um dieselbe Zeile mehrmals auf Übereinstimmungen zu überprüfen. Normalerweise wird nach einem Treffer zur nächsten Zeile übergegangen, anstatt erneut zu prüfen.
$ ./ds -m -T --hide -f /var/log/autodeauth/log
2023-02-26 00:28:19 - Sende 500 Deauth‑Frames an Netzwerk: BC:2E:48:E5:DE:FF -- PrivateNetwork
2023-02-26 00:35:22 - Sende 500 Deauth‑Frames an Netzwerk: 90:58:51:1C:C9:E1 -- TestNet
Sie können die Option --directory verwenden, um alle Dateien im angegebenen Verzeichnis rekursiv zu lesen. Die Option -D zeigt den Dateinamen an, in dem der Treffer gefunden wurde. Mit -l oder --line wird die Zeilennummer angezeigt, in der der Inhalt gefunden wurde.
$ ds --directory test_dir/ -Dl

Um Ihre Ergebnisse in eine CSV‑Datei auszugeben, verwenden Sie die Option -o gefolgt vom Namen der Datei, in der Sie Ihre Daten speichern möchten. Die Optionen -D und -X werden unterstützt. Das Format lautet: ds -o <DATEINAME>.csv (.csv ist erforderlich).
$ wget -qO - https://www.stackoverflow.com | ds -o output.csv -C

Wenn keine spezifische Abfrage angegeben wird, durchsucht ds alle möglichen Datentypen, was DEUTLICH langsamer ist als die Verwendung einzelner Abfragen. Die langsamste Abfrage ist --files. Es ist auch etwas schneller, cat zu verwenden, um die Daten an ds weiterzuleiten.
Im Folgenden ist die verstrichene Zeit bei der Verarbeitung einer 5 GB großen Testdatei aufgeführt, die von ds-test erzeugt wurde. Jeder Test wurde dreimal durchgeführt und die Durchschnittszeit wurde aufgezeichnet.
Prozessor Intel(R) Core(TM) i5-10400F CPU @ 2.90GHz, 2904 Mhz, 6 Kerne, 12 logische Prozessoren
RAM 12,0 GB (11,9 GB nutzbar)
| Befehl | Geschwindigkeit |
|---|---|
cat test.txt | ds -t | 00h:02m:04s |
ds -t -f test.txt | 00h:02m:05s |
cat test.txt | ds -t -o output.txt | 00h:02m:06s |
| Befehl | Geschwindigkeit | Anzahl der Abfragen |
|---|---|---|
cat test.txt | ds -t -6 | 00h:00m:12s |
Wenn Sie ein neues Problem melden, beantworten Sie bitte ALLE Fragen in der Fehlerberichtsvorlage. Probleme mit nicht genügend Informationen werden geschlossen.
| 1 |
cat test.txt | ds -t -i -m | 00h:00m:22 | 2 |
cat test.txt | ds -tF6c | 00h:00m:32s | 3 |