Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Trawler — Script PowerShell che aiuta gli Incident Responder a scoprire potenziali meccanismi di persistenza degli avversari. | Kitploit
Strumenti/GitHubGitHub/joeavanzato/trawler
Strumenti DifensiviMeccanismi di PersistenzaInformatica ForenseDigital ForensicsRisposta agli Incidenti
GitHubjoeavanzato/trawler

Trawler

Script PowerShell che aiuta gli Incident Responder a scoprire potenziali meccanismi di persistenza degli avversari.

Vedi Repository
34038141 anno faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Setacciare Windows per la Persistenza

Cos'è?

Trawler è uno script PowerShell progettato per aiutare gli Incident Responder a scoprire potenziali indicatori di compromissione su host Windows, focalizzato principalmente su meccanismi di persistenza tra cui Attività pianificate, Servizi, Modifiche al Registro di sistema, Elementi di avvio, Modifiche ai binari e altro ancora.

Attualmente, trawler è in grado di rilevare la maggior parte delle tecniche di persistenza specificamente indicate da MITRE e Atomic Red Team, con rilevamenti aggiunti regolarmente.

Caratteristiche principali

  • Scansione del sistema operativo Windows per una varietà di tecniche di persistenza (elencate di seguito)
  • Output CSV con tecnica MITRE e metadati di avvio dell'indagine
  • Documentazione di guida all'analisi e alla correzione (https://github.com/joeavanzato/Trawler/wiki/Analysis-and-Remediation-Guidance)
  • Assegnazione dinamica del rischio per ogni rilevamento
  • Liste di autorizzazione integrate per configurazioni Windows comuni (Windows 10/Server 2012|2016|2019|2022) per ridurre il rumore
  • Acquisizione di metadati di persistenza da un'immagine aziendale 'golden' (snapshot) per utilizzarli come lista di autorizzazione dinamica in fase di esecuzione
  • Analisi di immagini disco montate tramite re-targeting dell'unità

Come si usa?

Basta scaricare ed eseguire trawler.ps1 da un prompt PowerShell/cmd amministrativo: tutti i rilevamenti verranno visualizzati nella console e scritti in un CSV ('detections.csv') nella directory di lavoro corrente. Il CSV generato conterrà Nome Rilevamento, Fonte, Rischio, Metadati e la relativa tecnica MITRE.

Oppure usa questo one-liner da un terminale PowerShell amministrativo:

iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/joeavanzato/Trawler/main/trawler.ps1'))

Alcuni rilevamenti hanno liste di autorizzazione integrate per aiutare a rimuovere il rumore dalle configurazioni Windows predefinite (10/2016/2019/2022) - attività pianificate, servizi, ecc. previsti. Naturalmente, è sempre possibile che gli aggressori li dirottino direttamente e si mascherino con grande dettaglio come un processo predefinito del sistema operativo - fare attenzione a utilizzare più forme di analisi e rilevamento quando si ha a che fare con avversari esperti.

Se hai esempi o idee per rilevamenti aggiuntivi, sentiti libero di inviare una Issue o una PR con i dettagli tecnici/riferimenti pertinenti - la base di codice è un po' disordinata al momento e verrà ripulita nel tempo.

Inoltre, se identifichi falsi positivi evidenti, fammelo sapere aprendo un'issue o una PR su GitHub! I colpevoli più probabili per questo saranno COM, servizi o attività non standard.

Parametri CLI

-scanoptions : Tab-through for possible detections and select a sub-set using comma-delimited terms (eg. .\trawler.ps1 -scanoptions Services,Processes) or skip to do all detections
-quiet : Suppress Detection output to console
-snapshot : Path to a previous trawler JSON output to use as an allow-list.
-outpath : Define a custom file-path for saving detection output to (defaults to "$PSScriptRoot\detections.csv")
-drivetarget : Define the variable for a mounted target drive (eg. .\trawler.ps1 -targetdrive "D:") - (defaults to local system)
-daysago : Define how many 'days back' we want to take into consideration for time-based detections (defaults to 45)
-hashmode : Define which hashing algorithm we want to use for supported detections - supports sha1, md5 or sha256 (defaults to sha1)
-evtx : Enable creation of Event Log Source and Writing of Detections to Application event log under Source=trawler with EID=9001 (default is disabled)

Cosa differenzia questo da PersistenceSniper?

PersistenceSniper è uno strumento fantastico - l'ho usato pesantemente in passato - ma ci sono alcuni punti chiave che differenziano queste utility

  • trawler è (attualmente) un'utilità locale - sarebbe abbastanza semplice avvolgerlo in un ciclo e utilizzare sessioni WinRM/PowerShell per eseguirlo su host remoti, comunque
  • trawler implementa l'allow-listing per molti rilevamenti 'rumorosi' per aiutare a rimuovere rilevamenti previsti dalle configurazioni predefinite di Windows (10/2016/2019/2022) e questi vengono costantemente aggiornati (anche PS lo fa)
    • PersistenceSniper (per la maggior parte) non contiene alcun tipo di allow-listing - quindi, c'è più rumore generato quando si considerano elementi come Servizi, Attività pianificate, scansione generale di DLL COM, ecc.
  • l'output di trawler è semplificato - Nome, Rischio, Fonte, Tecnica MITRE e Metadati sono gli unici elementi forniti per ogni rilevamento per aiutare gli analisti a dare il via ai loro sforzi di caccia alla persistenza - questa è un'arma a doppio taglio.
  • Le espressioni regolari sono utilizzate in molti controlli per aiutare a rilevare parole chiave o pattern 'sospetti' in diverse aree critiche, inclusi i contenuti dei file scansionati, i valori del registro, ecc. Questo offre un po' più di flessibilità ma anche un tasso di falsi positivi potenzialmente più elevato.
  • trawler supporta il 'drive-retargeting' per controllare macchine morte montate su una macchina di analisi.

Nel complesso, questi strumenti sono estremamente simili ma affrontano il problema da angolazioni leggermente diverse - PersistenceSniper fornisce tutte le informazioni all'analista per la revisione, mentre Trawler cerca di limitare ciò che viene restituito ai soli risultati che probabilmente sono potenziali meccanismi di persistenza avversari. Di conseguenza, c'è la possibilità di falsi negativi con trawler se un avversario imita completamente un elemento presente nella lista di autorizzazione.

Ad esempio - PersistenceSniper restituirà tutti i servizi Windows 'non sicuri' mentre trawler restituirà solo quelli che corrispondono a una regola di rilevamento specifica, ecc.

Ottimizzazione per il tuo ambiente

Trawler supporta il caricamento di una lista di autorizzazione da un 'snapshot' - per farlo sono necessari due passaggi.

  1. Eseguire '.\trawler.ps1 -snapshot' su un' "Immagine Golden" che rappresenta i server nel tuo ambiente - una volta completato, oltre al file 'detections.csv' standard, verrà generato un file denominato 'snapshots.csv'
  2. Questo file può quindi essere usato come input per trawler quando viene eseguito su altri host e i dati verranno caricati dinamicamente come lista di autorizzazione per ogni rilevamento appropriato
    1. '.\trawler.ps1' -loadsnapshot "path\to\snapshot.csv"

Ecco fatto - tutti i rilevamenti pertinenti attingeranno quindi dal file snapshot come lista di autorizzazione per ridurre il rumore e identificare eventuali modifiche all'immagine di base che potrebbero essere avvenute.

(L'allow-listing è implementata per la maggior parte dei controlli ma non per tutti - ancora in fase di implementazione attiva)

Re-targeting dell'unità

Spesso durante un'indagine, gli analisti possono finire per montare una nuova unità che rappresenta un dispositivo Windows clonato - Trawler ora supporta parzialmente la scansione di queste unità montate attraverso l'uso del parametro '-drivetarget'.

In fase di esecuzione, Trawler reindirizzerà le variabili temporanee a livello di script per l'uso nel controllo degli artefatti basati su file e tenterà anche di caricare i relativi hive del registro (HKLM\SOFTWARE, HKLM\SYSTEM, NTUSER.DAT, USRCLASS.DAT) sotto HKLM/HKU e preceduti da 'ANALYSIS_'. Trawler tenterà anche di scaricare questi hive caricati temporaneamente al completamento dello script.

Scarica lo strumento