
Estrae rapidamente indirizzi IP, indirizzi email, hash, file, carte di credito, numeri di previdenza sociale e molto altro dal testo
DataSurgeon (ds) è uno strumento versatile progettato per la risposta agli incidenti, DLP, penetration testing e sfide CTF. Permette l'estrazione di vari tipi di informazioni sensibili tra cui email, numeri di telefono, hash, carte di credito, URL, indirizzi IP, indirizzi MAC, record DNS SRV e molto altro!
Per imparare come gestire i plugin, segui la guida qui.
Questo aggiornamento introduce un sistema di gestione dei plugin in DataSurgeon. Ora puoi aggiungere, rimuovere ed elencare plugin usando le opzioni --add, --remove e --list.
Ho anche aggiunto un nuovo plugin, ds-winreg-plugin, che può trovare percorsi del registro di Windows.
Per aggiungere un nuovo plugin, usa --add <URL>, dove l'URL è un repository GitHub con un file plugins.json. Per rimuovere un plugin, usa --remove <URL>. Per vedere tutti i tuoi plugin, usa l'opzione --list.
Una volta aggiunto un plugin, puoi usarlo come argomento in DataSurgeon. Il nome dell'argomento è "Argument Long Name" nel file plugins.json del plugin.
L'installatore rapido può essere utilizzato anche per aggiornare DataSurgeon.
Installa Rust e Git poi RIAVVIA IL TERMINALE.
read -p "Would you like to add 'ds' to your local bin? This will make 'ds' executable from any location in your terminal. (y/n) " response && wget -q -O - https://raw.githubusercontent.com/Drew-Alleman/DataSurgeon/main/install/install.sh | bash -s -- "$response"
Inserisci la riga seguente in una finestra powershell elevata.
IEX (New-Object Net.WebClient).DownloadString("https://raw.githubusercontent.com/Drew-Alleman/DataSurgeon/main/install/install.ps1")
Riavvia il terminale e potrai usare ds dalla riga di comando.
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/Drew-Alleman/DataSurgeon/main/install/install.sh | sh

Qui uso wget per fare una richiesta a stackoverflow, poi inoltro il testo del corpo a ds. L'opzione -F elencherà tutti i file trovati. --clean viene utilizzato per rimuovere eventuali testo extra che potrebbe essere stato restituito (come HTML extra). Quindi il risultato viene inviato a uniq che rimuove i file non unici trovati. Se vuoi, puoi rimuovere il messaggio di avviso in alto 'Reading standard input..' usando -S.
$ wget -qO - https://www.stackoverflow.com | ds -F --clean | uniq

Qui sto estraendo tutti gli indirizzi MAC trovati nel file di log di autodeauth usando la query -m. L'opzione --hide nasconderà la stringa identificativa davanti ai risultati. In questo caso 'mac_address: ' viene nascosto dall'output. L'opzione -T viene utilizzata per controllare più volte la stessa linea per corrispondenze. Normalmente, quando viene trovata una corrispondenza, lo strumento passa alla linea successiva invece di ricontrollare.
$ ./ds -m -T --hide -f /var/log/autodeauth/log
2023-02-26 00:28:19 - Sending 500 deauth frames to network: BC:2E:48:E5:DE:FF -- PrivateNetwork
2023-02-26 00:35:22 - Sending 500 deauth frames to network: 90:58:51:1C:C9:E1 -- TestNet
Puoi usare l'opzione --directory per leggere tutti i file nella directory specificata in modo ricorsivo. L'opzione -D viene utilizzata per visualizzare il nome del file in cui è stata trovata la corrispondenza. -l o --line viene utilizzato per visualizzare il numero di riga in cui è stato trovato il contenuto.
$ ds --directory test_dir/ -Dl

Per esportare i risultati in un file CSV, usa l'opzione -o seguita dal nome del file in cui salvare i dati. Sono supportate le opzioni -D e -X. Il formato è: ds -o <NOMEFILE>.csv (è necessario .csv).
$ wget -qO - https://www.stackoverflow.com | ds -o output.csv -C

Quando non viene fornita una query specifica, ds cercherà attraverso tutti i possibili tipi di dati, il che è SIGNIFICATIVAMENTE più lento rispetto all'uso di query individuali. La query più lenta è --files. È anche leggermente più veloce usare cat per inviare i dati a ds.
Di seguito è riportato il tempo trascorso durante l'elaborazione di un file di test da 5GB generato da ds-test. Ogni test è stato eseguito 3 volte ed è stato registrato il tempo medio.
Processor Intel(R) Core(TM) i5-10400F CPU @ 2.90GHz, 2904 Mhz, 6 Core(s), 12 Logical Processor(s)
Ram 12.0 GB (11.9 GB usable)
| Comando | Velocità |
|---|---|
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 |
| Comando | Velocità | Numero query |
|---|---|---|
cat test.txt | ds -t -6 | 00h:00m:12s | 1 |
Quando compili una nuova segnalazione, rispondi a TUTTE le domande nel modello per bug. Le segnalazioni con informazioni insufficienti verranno chiuse.
cat test.txt | ds -t -i -m |
| 00h:00m:22 |
| 2 |
cat test.txt | ds -tF6c | 00h:00m:32s | 3 |