
Genera regole YARA in blocco da input YAML
Pubblicato come open source da NCC Group Plc - http://www.nccgroup.com/
Sviluppato da David Cannings (@edeca) [email protected]
http://www.github.com/nccgroup/yaml2yara
Questo progetto è rilasciato sotto licenza AGPL. Si prega di consultare LICENSE per maggiori informazioni.
Questa repository contiene uno script che crea regole di rilevamento personalizzate a partire da input YAML.
Viene utilizzato per generare automaticamente la stessa regola per più elementi di dati di input, ad esempio:
Questo disaccoppia la logica delle regole dai dati da confrontare, consentendo di aggiornare facilmente regole in blocco per ottimizzarle o sfruttare nuove funzionalità di YARA.
Inizialmente è stato progettato per generare regole Yara. Tuttavia, può essere facilmente esteso ad altri formati (MAEC, regole Suricata) con nuovi template.
Gli obiettivi sono:
Tutte le dipendenze richieste possono essere installate usando pip:
pip install -r Requirements.txt
Nella repository sono inclusi alcuni file di dati di esempio e template. Esempio di utilizzo:
./generate.py --template authenticode --input sample_data/authenticode/stolen_certs.yaml
./generate.py --template office_exploits --input sample_data/office_exploits/ole.yaml
./generate.py --template resources --input sample_data/resources/malware.yaml
L'output può anche essere modificato con --tag, che aggiungerà tag di regola a ciascuna regola generata:
./generate.py --template authenticode --tag authenticode --input sample_data/authenticode/stolen_certs.yaml
È disponibile anche un'opzione --prefix, che assegnerà un nome a tutte le regole:
./generate.py --template office_exploits --prefix exploit --input sample_data/office_exploits/ole.yaml
È disponibile la guida, vedere ./generate.py --help.