- YARA permette di discrive famiglie di malware aduprendu regule flessibili basate nantu à stringhe, mudelli binari è proprietà di file.
- E regule ben cuncepite ponu rilevà tuttu, da ransomware è APT à webshells è exploit zero-day in parechji ambienti.
- L'integrazione di YARA in e copie di salvezza, i flussi di travagliu forensi è l'arnesi aziendali rinfurza a difesa al di là di u software antivirus tradiziunale.
- A cumunità YARA è i repositori di regule facilitanu a spartera di l'intelligenza è u miglioramentu cuntinuu di a rilevazione.

¿Cumu aduprà YARA per a rilevazione avanzata di malware? Quandu i prugrammi antivirus tradiziunali ghjunghjenu à i so limiti è l'attaccanti passanu per ogni crepa pussibule, un strumentu chì hè diventatu indispensabile in i laboratori di risposta à l'incidenti entra in ghjocu: YARA, u "culteddu svizzeru" per a caccia di malwareCuncipitu per discrive famiglie di software maliziosu utilizendu mudelli testuali è binari, permette di andà assai al di là di a semplice currispundenza hash.
In e mani ghjuste, YARA ùn hè micca solu per localizà micca solu campioni di malware cunnisciuti, ma ancu nuove varianti, exploit zero-day, è ancu strumenti offensivi cummercialiIn questu articulu, esploreremu in prufundità è in pratica cumu aduprà YARA per a rilevazione avanzata di malware, cumu scrive regule robuste, cumu testarle, cumu integralle in piattaforme cum'è Veeam o u vostru propiu flussu di travagliu d'analisi, è quali migliori pratiche seguita a cumunità prufessiunale.
Chì ghjè YARA è perchè hè cusì putente per rilevà malware?
YARA significa "Yet Another Recursive Acronym" è hè diventatu un standard de facto in l'analisi di e minacce perchè Permette di discrive famiglie di malware aduprendu regule leggibili, chjare è assai flessibili.Invece di fidà si solu di e firme antivirus statiche, YARA funziona cù mudelli chì definite voi stessi.
L'idea di basa hè simplice: una regula YARA esamina un schedariu (o memoria, o flussu di dati) è verifica se una seria di cundizioni sò soddisfatte. cundizioni basate nantu à stringhe di testu, sequenze esadecimali, espressioni regulari o proprietà di fileSè a cundizione hè rispettata, ci hè una "currispundenza" è pudete avvisà, bluccà o fà analisi più approfondite.
Questu approcciu permette à e squadre di sicurezza Identificà è classificà malware di tutti i tipi: virus classici, vermi, troiani, ransomware, webshell, cryptominer, macro maliziose è assai di piùÙn hè micca limitatu à estensioni o furmati di file specifici, dunque rileva ancu un eseguibile camuffatu cù una estensione .pdf o un file HTML chì cuntene una webshell.
Inoltre, YARA hè digià integrata in parechji servizii è strumenti chjave di l'ecosistema di a cibersigurtà: VirusTotal, sandbox cum'è Cuckoo, piattaforme di backup cum'è Veeam, o suluzioni di caccia à e minacce da i pruduttori di puntaDunque, a maestria di YARA hè diventata guasi un requisitu per l'analisti è i circadori avanzati.
Casi d'usu avanzati di YARA in a rilevazione di malware
Unu di i punti di forza di YARA hè chì s'adatta cum'è un guantu à parechji scenarii di sicurezza, da u SOC à u laburatoriu di malware. E listesse regule s'applicanu à e cacce una tantum è à u monitoraghju cuntinuu..
U casu u più direttu implica a creazione regule specifiche per malware specifichi o famiglie intereSè a vostra urganizazione hè attaccata da una campagna basata annantu à una famiglia cunnisciuta (per esempiu, un trojan d'accessu remotu o una minaccia APT), pudete prufilà stringhe è mudelli caratteristici è suscità regule chì identificanu rapidamente novi campioni correlati.
Un altru usu classicu hè u focu di YARA basatu annantu à e firmeQueste regule sò cuncepite per localizà hash, stringhe di testu assai specifiche, frammenti di codice, chjave di registru, o ancu sequenze di byte specifiche chì sò ripetute in parechje varianti di u listessu malware. Tuttavia, tenite à mente chì se cercate solu stringhe triviali, rischiate di generà falsi pusitivi.
YARA brilla ancu quandu si tratta di filtrà per tipi di schedari o caratteristiche strutturaliHè pussibule di creà regule chì s'applicanu à l'eseguibili PE, i ducumenti d'uffiziu, i PDF, o praticamente qualsiasi furmatu, cumbinendu stringhe cù pruprietà cum'è a dimensione di u schedariu, intestazioni specifiche (per esempiu, 0x5A4D per l'eseguibili PE), o importazioni di funzioni suspette.
In l'ambienti muderni, u so usu hè ligatu à intelligenza di minacceI repositori publichi, i rapporti di ricerca è i feed IOC sò tradutti in regule YARA chì sò integrate in SIEM, EDR, piattaforme di backup o sandbox. Questu permette à l'urganisazioni di rilevà rapidamente e minacce emergenti chì spartenu caratteristiche cù e campagne digià analizate.
Capisce a sintassi di e regule YARA
A sintassi di YARA hè abbastanza simile à quella di C, ma in un modu più simplice è più focalizatu. Ogni regula hè cumposta da un nome, una sezzione di metadati opzionale, una sezzione di stringa è, necessariamente, una sezzione di cundizione.Da quì in avanti, u putere stà in cumu si combina tuttu què.
U primu hè u nome di a regulaDeve andà subitu dopu à a parola chjave regula (o regula Sè vo ducumentate in spagnolu, ancu s'è a parolla chjave in u schedariu serà regulaè deve esse un identificatore validu: senza spazii, senza numeri è senza trattini bassi. Hè una bona idea di seguità una cunvenzione chjara, per esempiu qualcosa cum'è Variante_di_Famiglia_di_Malware o Strumentu_Attore_APT, chì vi permette di identificà à prima vista ciò chì hè destinatu à rilevà.
Dopu vene a sezione cordeinduve definite i mudelli chì vulete circà. Quì pudete aduprà trè tippi principali: stringhe di testu, sequenze esadecimali è espressioni regulariE stringhe di testu sò ideali per frammenti di codice leggibili da l'omu, URL, missaghji interni, nomi di percorsi o PDB. L'esadecimali permettenu di catturà mudelli di byte grezzi, chì sò assai utili quandu u codice hè offuscatu ma mantene certe sequenze custanti.
L'espressioni regulare offrenu flessibilità quandu avete bisognu di copre piccule variazioni in una stringa, cum'è u cambiamentu di duminii o parti di codice ligeramente alterate. Inoltre, e stringhe è e regex permettenu à e scappatoie di rapprisintà byte arbitrarii., chì apre a porta à mudelli ibridi assai precisi.
Sezione cundizione Hè l'unica ubligatoria è definisce quandu una regula hè cunsiderata cum'è "currispundente" à un schedariu. Quì si utilizanu operazioni booleane è aritmetiche (è, o, micca, +, -, *, /, qualsiasi, tuttu, cuntene, ecc.) per sprimà una logica di rilevazione più fina chè un simplice "s'ellu appare sta stringa".
Per esempiu, pudete specificà chì a regula hè valida solu s'è u schedariu hè più chjucu di una certa dimensione, s'è tutte e stringhe critiche appariscenu, o s'è almenu una di parechje stringhe hè presente. Pudete ancu cumminà cundizioni cum'è a lunghezza di a stringa, u numeru di currispundenze, offset specifici in u schedariu, o a dimensione di u schedariu stessu.A creatività quì face a differenza trà e regule generiche è e rilevazioni chirurgiche.
Infine, avete a sezione facultativa scopuIdeale per documentà u periodu. Hè cumunu d'include autore, data di creazione, descrizzione, versione interna, riferimentu à rapporti o biglietti è, in generale, qualsiasi infurmazione chì aiuta à mantene u repositoriu urganizatu è comprensibile per l'altri analisti.
Esempi pratichi di regule YARA avanzate
Per mette tuttu ciò chì hè statu dettu sopra in perspettiva, hè utile vede cumu una regula simplice hè strutturata è cumu diventa più cumplessa quandu entranu in ghjocu i fugliali eseguibili, l'impurtazioni suspettose o e sequenze d'istruzzioni ripetitive. Cuminciamu cù una regula di ghjocu è aumentemu gradualmente a dimensione..
Una regula minima pò cuntene solu una stringa è una cundizione chì a rende ubligatoria. Per esempiu, pudete circà una stringa di testu specifica o una sequenza di byte chì rapprisenta un frammentu di malware. A cundizione, in questu casu, dichjarerebbe simpliciamente chì a regula hè rispettata se appare quella stringa o mudellu., senza altri filtri.
Tuttavia, in i cuntesti di u mondu reale questu ùn hè micca abbastanza, perchè E catene simplici spessu generanu parechji falsi pusitiviHè per quessa ch'ellu hè cumunu di cumminà parechje stringhe (testu è esadecimali) cù restrizioni supplementari: chì u schedariu ùn superi micca una certa dimensione, chì cuntene intestazioni specifiche, o chì sia attivatu solu s'ellu si trova almenu una stringa di ogni gruppu definitu.
Un esempiu tipicu in l'analisi eseguibile PE implica l'importazione di u modulu pe da YARA, chì vi permette di dumandà e proprietà interne di u binariu: funzioni impurtate, sezioni, timestamp, ecc. Una regula avanzata puderia richiede l'impurtazione di u schedariu CreateProcess da Kernel32.dll è qualchì funzione HTTP da wininet.dll, in più di cuntene una stringa specifica chì indica un cumpurtamentu maliziosu.
Stu tipu di logica hè perfetta per localizà Trojani cù cunnessione remota o capacità di esfiltrazioneancu quandu i nomi di i fugliali o i percorsi cambianu da una campagna à l'altra. L'impurtante hè di fucalizza si nantu à u cumpurtamentu sottustante: creazione di prucessi, richieste HTTP, crittografia, persistenza, ecc.
Un'altra tecnica assai efficace hè di fighjà u sequenze d'istruzzioni chì sò ripetute trà campioni di a listessa famiglia. Ancu s'è l'attaccanti impacchettanu o offuscanu u binariu, spessu riutilizanu parti di codice chì sò difficiuli da cambià. Sè, dopu l'analisi statica, truvate blocchi custanti d'istruzzioni, pudete formulà una regula cù caratteri jolly in stringhe esadecimali chì cattura quellu mudellu mantenendu una certa tolleranza.
Cù ste regule "basate nantu à u cumpurtamentu di u codice" hè pussibule tracciate campagne di malware intere cum'è quelle di PlugX/Korplug o altre famiglie APTÙn si tratta micca solu di rilevà un hash specificu, ma si perseguita ancu u stile di sviluppu, per dì cusì, di l'attaccanti.
Usu di YARA in campagne reali è minacce zero-day
YARA hà dimustratu u so valore soprattuttu in u campu di e minacce avanzate è di l'exploit zero-day, induve i meccanismi di prutezzione classici ghjunghjenu troppu tardi. Un esempiu ben cunnisciutu hè l'usu di YARA per localizà un exploit in Silverlight da infurmazioni minime filtrate..
In questu casu, da e-mail arrubate da una sucietà dedicata à u sviluppu di strumenti offensivi, sò stati dedutti mudelli sufficienti per custruisce una regula orientata à un exploit specificu. Cù sta sola regula, i circadori sò stati capaci di traccià u campione attraversu un mare di fugliali suspetti.Identificà l'exploit è furzà a so applicazione di patch, impedendu danni assai più serii.
Sti tipi di storie illustranu cumu YARA pò funziunà cum'è rete di pesca in un mare di fuglialiImagine a vostra reta corporativa cum'è un oceanu pienu di "pesci" (schedarii) di ogni tipu. E vostre regule sò cum'è compartimenti in una rete à strascicu: ogni compartimentu tene i pesci chì currispondenu à caratteristiche specifiche.
Quandu avete finitu u trascinamentu, avete campioni raggruppati per similitudine cù famiglie specifiche o gruppi di aggressori: «simile à a Spezia X», «simile à a Spezia Y», ecc. Certi di sti campioni ponu esse cumpletamente novi per voi (novi binari, nuove campagne), ma si adattanu à un mudellu cunnisciutu, ciò chì accelera a vostra classificazione è a vostra risposta.
Per sfruttà à u massimu YARA in questu cuntestu, parechje urganisazioni combinanu furmazione avanzata, laboratori pratichi è ambienti di sperimentazione cuntrullatiCi sò corsi assai spezializati dedicati esclusivamente à l'arte di scrive bone regule, spessu basati annantu à casi veri di ciberspionaggio, in i quali i studienti praticanu cù campioni autentichi è amparanu à circà "qualcosa" ancu quandu ùn sanu micca esattamente ciò chì cercanu.
Integrate YARA in e piattaforme di salvezza è di ricuperazione
Un duminiu induve YARA s'inserisce perfettamente, è chì spessu passa un pocu inosservatu, hè a prutezzione di e copie di salvezza. Sè e copie di salvezza sò infettate da malware o ransomware, una restaurazione pò riavvià una campagna sana.Hè per quessa chì certi pruduttori anu integratu i motori YARA direttamente in e so suluzioni.
E piattaforme di salvezza di prossima generazione ponu esse lanciate Sessioni d'analisi basate nantu à e regule YARA nantu à i punti di restaurazioneL'obiettivu hè duppiu: localizà l'ultimu puntu "pulitu" prima di un incidente è rilevà u cuntenutu maliziosu piattu in i fugliali chì ùn sò micca stati attivati da altre verifiche.
In questi ambienti, u prucessu tipicu implica a selezzione di una opzione di "Scansione di i punti di restaurazione cù una regula YARA"durante a cunfigurazione di un travagliu d'analisi. Dopu, u percorsu versu u schedariu di e regule hè specificatu (di solitu cù l'estensione .yara o .yar), chì hè tipicamente almacenatu in una cartella di cunfigurazione specifica per a suluzione di salvezza."
Durante l'esecuzione, u mutore itera trà l'uggetti cuntenuti in a copia, applica e regule è Registra tutte e partite in un registru d'analisi YARA specificu.L'amministratore pò vede sti logs da a cunsola, rivedere e statistiche, vede quali fugliali anu attivatu l'alerta, è ancu traccià à quali macchine è a data specifica currisponde ogni currispundenza.
Questa integrazione hè cumplementata da altri meccanismi cum'è rilevazione di anomalie, monitoraghju di a dimensione di e copie di salvezza, ricerca di IOC specifici, o analisi di strumenti suspettiMa quandu si tratta di regule adattate à una famiglia o campagna specifica di ransomware, YARA hè u megliu strumentu per affinà quella ricerca.
Cumu pruvà è validà e regule YARA senza rompe a vostra rete

Una volta chì cuminciate à scrive e vostre regule, u prossimu passu cruciale hè di pruvalle accuratamente. Una regula troppu aggressiva pò generà un diluviu di falsi pusitivi, mentre chì una regula troppu lassa pò lascià passà minacce vere.Hè per quessa chì a fase di prova hè altrettantu impurtante quant'è a fase di scrittura.
A bona nutizia hè chì ùn avete micca bisognu di mette in opera un laburatoriu pienu di malware funzionale è infettà a mità di a rete per fà questu. Esistenu digià repositori è insemi di dati chì offrenu sta infurmazione. campioni di malware cunnisciuti è cuntrullati per scopi di ricercaPudete scaricà questi campioni in un ambiente isolatu è aduprà li cum'è un bancu di prova per e vostre regule.
L'approcciu abituale hè di principià eseguendu YARA lucalmente, da a linea di cummanda, contr'à un cartulare chì cuntene fugliali suspetti. Sè e vostre regule currispondenu induve devenu è ùn sò guasi micca valide in i fugliali puliti, site nantu à a bona strada.S'elli attivanu troppu, hè ora di rivedere e stringhe, affinà e cundizioni o introduce restrizioni supplementari (dimensione, impurtazioni, offset, ecc.).
Un altru puntu chjave hè di assicurà chì e vostre regule ùn compromettinu micca e prestazioni. Quandu si scansionanu grandi cartulari, copie di salvezza cumplete o cullezzione di campioni massive, E regule mal ottimizzate ponu rallentà l'analisi o cunsumà più risorse di quelle desiderate.Dunque, hè cunsigliatu di misurà i tempi, simplificà l'espressioni cumplicate è evità regex eccessivamente pesanti.
Dopu avè passatu per quella fase di test di laburatoriu, puderete Prumove e regule à l'ambiente di pruduzzioneCh'ella sia in u vostru SIEM, i vostri sistemi di salvezza, i servitori di email, o induve vulete integrà li. È ùn vi scurdate di mantene un ciclu di revisione cuntinuu: à misura chì e campagne si evolvanu, e vostre regule averanu bisognu di aghjustamenti periodichi.
Strumenti, prugrammi è flussu di travagliu cù YARA

Oltre à u binariu ufficiale, parechji prufessiunali anu sviluppatu picculi prugrammi è scripts intornu à YARA per facilità u so usu cutidianu. Un approcciu tipicu implica a creazione di una applicazione per assemblate u vostru propiu kit di sicurezza chì legge automaticamente tutte e regule in un cartulare è l'applica à un cartulare d'analisi.
Sti tipi di strumenti fatti in casa funzionanu di solitu cù una struttura di cartulare simplice: una cartella per u reguli scaricati da Internet (per esempiu, "rulesyar") è un'altra cartella per u i fugliali suspetti chì saranu analizati (per esempiu, "malware"). Quandu u prugramma principia, verifica chì e duie cartelle esistenu, elenca e regule nantu à u screnu è si prepara per l'esecuzione.
Quandu appughjate un buttone cum'è "Principià a verificazioneL'applicazione lancia tandu l'eseguibile YARA cù i parametri desiderati: scansione di tutti i fugliali in u cartulare, analisi recursiva di i sottodirectory, output di statistiche, stampa di metadati, ecc. Ogni currispundenza hè visualizata in una finestra di risultati, chì indica quale fugliale currisponde à quale regula.
Stu flussu di travagliu permette, per esempiu, a rilevazione di prublemi in un batch di email esportati. Imagine incrustate maliziose, allegati periculosi, o webshell nascoste in fugliali apparentemente innocuiParechje investigazioni forensi in ambienti corporativi si basanu precisamente nantu à questu tipu di mecanismu.
In quantu à i parametri più utili quandu si invoca YARA, si distinguenu opzioni cum'è e seguenti: -r per circà recursivamente, -S per visualizà statistiche, -m per estrarre metadati, è -w per ignurà l'avvertimentiCumbinendu sti flags pudete adattà u cumpurtamentu à u vostru casu: da una rapida analisi in un cartulare specificu à una scansione cumpleta di una struttura di cartulare cumplessa.
E migliori pratiche per a scrittura è u mantenimentu di e regule YARA
Per impedisce chì u vostru repositoriu di regule diventi un disordine ingestibile, hè cunsigliatu d'applicà una seria di migliori pratiche. U primu hè di travaglià cù mudelli è cunvenzioni di denominazione coerentiaffinchì ogni analista possi capisce à prima vista ciò chì face ogni regula.
Parechje squadre aduttanu un furmatu standard chì include intestazione cù metadati, tag chì indicanu u tipu di minaccia, l'attore o a piattaforma, è una descrizzione chjara di ciò chì hè statu rilevatuQuestu aiuta micca solu internamente, ma ancu quandu si sparte e regule cù a cumunità o si cuntribuisce à i repositori publichi.
Un'altra raccomandazione hè di ricurdà sempre chì YARA hè solu un altru stratu di difesaÙn rimpiazza micca u software antivirus o EDR, ma piuttostu li cumplementa in strategie per Prutegge u vostru PC WindowsIdealmente, YARA duveria inserisce si in quadri di riferimentu più ampi, cum'è u quadru NIST, chì tratta ancu l'identificazione, a prutezzione, a rilevazione, a risposta è u recuperu di l'assi.
Da un puntu di vista tecnicu, vale a pena dedicà tempu à evite falsi pusitiviQuestu implica evità stringhe troppu generiche, cumbinendu parechje cundizioni è aduprendu operatori cum'è tutti di o alcunu di Aduprate a vostra testa è prufittate di e proprietà strutturali di u schedariu. Più specifica hè a logica chì circonda u cumpurtamentu di u malware, megliu hè.
Infine, mantene una disciplina di versione è revisione periodica Hè cruciale. E famiglie di malware evoluiscenu, l'indicatori cambianu, è e regule chì funzionanu oghje ponu esse insufficienti o diventà obsolete. Rivisà è raffinà u vostru inseme di regule periodicamente face parte di u ghjocu di u gattu è di u topu di a cibersigurtà.
A cumunità YARA è e risorse dispunibili
Una di e ragioni principali per chì YARA hè ghjunta cusì luntanu hè a forza di a so cumunità. I circadori, l'imprese di sicurezza è e squadre d'intervenzione di u mondu sanu spartenu continuamente regule, esempi è documentazione.creendu un ecosistema assai riccu.
U puntu di riferimentu principale hè u U repositoriu ufficiale di YARA nant'à GitHubCi truverete l'ultime versioni di u strumentu, u codice surghjente è ligami à a ducumentazione. Da quì pudete seguità u prugressu di u prugettu, signalà prublemi o cuntribuisce à migliuramenti sè vulete.
A ducumentazione ufficiale, dispunibile nantu à piattaforme cum'è ReadTheDocs, offre una guida sintattica cumpleta, moduli dispunibili, esempi di regule è riferimenti d'usuHè una risorsa essenziale per prufittà di e funzioni più avanzate, cum'è l'ispezione PE, ELF, e regule di memoria, o l'integrazioni cù altri strumenti.
Inoltre, ci sò archivi cumunitarii di e regule è firme YARA induve l'analisti di tuttu u mondu Publicanu cullezzione pronte à l'usu o cullezzione chì ponu esse adattate à i vostri bisogni.Questi repositori includenu tipicamente regule per famiglie di malware specifiche, kit di exploit, strumenti di pentesting usati maliziosamente, webshell, cryptominer è assai di più.
In parallelu, parechji pruduttori è gruppi di ricerca offrenu Furmazione specifica à YARA, da i livelli basi à i corsi assai avanzatiQueste iniziative includenu spessu laboratori virtuali è esercizii pratichi basati nantu à scenarii di u mondu reale. Alcune sò ancu offerte gratuitamente à urganisazioni senza scopo di lucro o entità particularmente vulnerabili à attacchi mirati.
Tuttu questu ecosistema significa chì, cù un pocu di dedizione, pudete passà da a scrittura di e vostre prime regule basiche à sviluppà suite sofisticate capaci di seguità campagne cumplesse è di rilevà minacce senza precedentiÈ, cumbinendu YARA cù l'antivirus tradiziunale, a copia di salvezza sicura è l'intelligenza di minacce, rendite e cose assai più difficili per l'attori maliziosi chì vaganu in Internet.
Cù tuttu ciò chì hè statu dettu sopra, hè chjaru chì YARA hè assai più cà una semplice utilità di linea di cummanda: hè una pezzu chjave in ogni strategia avanzata di rilevazione di malware, un strumentu flessibile chì s'adatta à u vostru modu di pensà cum'è analista è lingua cumuna chì cunnetta i laboratorii, i SOC è e cumunità di ricerca in u mondu sanu, permettendu à ogni nova regula d'aghjunghje un altru livellu di prutezzione contr'à campagne sempre più sofisticate.
Appassionatu di a tecnulugia da quandu era chjucu. Mi piace à esse aghjurnatu in u settore è, sopratuttu, cumunicà. Hè per quessa chì sò dedicatu à a cumunicazione nantu à i siti di tecnulugia è video games per parechji anni. Puderete truvà mi scrivendu nantu à Android, Windows, MacOS, iOS, Nintendo o qualsiasi altru tema cunnessu chì vene in mente.