
Semplice scanner IOC in Bash
Semplice scanner IOC Bash
Fenrir è un semplice script Bash per la scansione IOC. Permette di scansionare sistemi Linux/Unix/OSX per i seguenti Indicator of Compromise (IOC):
Hash
MD5, SHA1 e SHA256 (usando md5sum, sha1sum, sha -a 256)
Nomi file
stringa - verificata come sottostringa del percorso completo, ad es. "temp/p.exe" in "/var/temp/p.exe"
Stringhe
grep nei file
Server C2
verifica delle stringhe del server C2 nell'output di 'lsof -i' e 'lsof -i -n'
Finestra temporale critica
usando stat in diverse modalità - definire timestamp epoch minimo e massimo per trovare tutti i file creati in quell'intervallo
Caratteristiche di base:
FENRIR è il terzo strumento dopo THOR e LOKI. THOR è il nostro scanner APT completo con molti moduli e tipi di export per clienti aziendali. LOKI è uno scanner IOC gratuito e open source che utilizza YARA come formato di firma.
Il problema con entrambi i predecessori è che hanno determinati requisiti sulla piattaforma Linux. Compiliamo THOR per una specifica versione di Linux per abbinare la corretta libc richiesta dal modulo YARA. LOKI richiede Python e YARA installati su Linux per funzionare.
Ci siamo trovati di fronte al problema di controllare oltre 100 diversi sistemi Linux per determinati Indicator of Compromise (IOC) senza installare agenti o pacchetti software. Avevamo già un playbook Ansible per la distribuzione di THOR su un insieme definito di sistemi Linux remoti. Questo playbook crea un'unità RAM sul sistema remoto, copia il binario del programma locale sul sistema remoto, lo esegue e recupera i log in seguito. Questo garantisce che l'impronta del programma sul sistema remoto sia minima. Ho adattato il playbook Ansible per Fenrir. (è ancora non testato)
Fenrir è ancora in fase di 'test'. Segnalate errori (e soluzioni) tramite la sezione "Issues" qui su GitHub.
Se trovate una soluzione migliore / più solida / meno soggetta a errori per le valutazioni nello script, segnalatela. Non sono un programmatore Bash a tempo pieno, quindi mi aspetto margini di miglioramento.
Usage: ./fenrir.sh DIRECTORY
DIRECTORY - Punto di partenza per la scansione ricorsiva
Tutte le impostazioni possono essere configurate nell'intestazione dello script.

Quello che Fenrir fa è:
Esecuzione della scansione che mostra i diversi tipi di corrispondenza in una directory demo.

Rilevamento connessioni C2

Rilevamento stringhe in file di log compressi con GZIP

Configurazione

Playbook Ansible

Problema con stat (relativo al timestamp CREATO sui filesystem Linux)

via Twitter @Cyb3rOps