Detectarea bazată pe semnături cu YARA

într-o postare anterioară, am vorbit despre cum puteți utiliza STIX, TAXII și CybOX pentru a partaja informații despre amenințări.

unul dintre elementele cheie pentru a pune informațiile despre amenințarea cibernetică la o bună utilizare necesită ca informațiile să poată fi acționate sau cel puțin utilizabile. Informațiile partajate trebuie să fie corecte, complete și relevante pentru mediul dvs.

CybOX oferă o structură comună pentru reprezentarea observabilelor cibernetice în și între zonele operaționale ale securității cibernetice a întreprinderii. CybOX poate conține hash-uri, șiruri sau chei de registry. Informațiile furnizate prin intermediul sistemului pot fi utilizate pentru a verifica prezența malware-ului în mediul dvs. YARA este una dintre alternativele la utilizarea CyBOX, dar cele două nu se exclud reciproc.

ce este YARA?

YARA este un instrument conceput pentru a ajuta cercetătorii malware să identifice și să clasifice mostre de malware. A fost numit cuțitul armatei elvețiene care se potrivește cu modelele pentru cercetătorii de securitate (și pentru toți ceilalți). Este multiplatformă și poate fi utilizat atât din interfața sa de linie de comandă, cât și prin propriile scripturi Python.

Instrumentul vă permite să efectuați detectarea pe bază de semnătură a malware-ului, ceva similar cu ceea ce soluțiile antivirus pot face pentru dvs.

Cum Îl Folosiți?

Pentru a utiliza această metodă, aveți nevoie de o regulă și un fișier pe care doriți să îl verificați. De exemplu, pentru a rula din linia de comandă, utilizați:
aceasta va fi afișată dacă regula dată se potrivește cu fișierul furnizat. Dacă nu vedeți ieșirea și nu ați utilizat opțiunea negate, atunci aceasta înseamnă că nicio regulă nu s-a potrivit.

îl puteți porni cu un număr de comutatoare de configurare; acestea sunt cele două cele mai importante :

  • -n: imprimați numai reguli nesatisfăcute (negați).
  • – r: căutați recursiv prin directoare.

reguli

o regulă este un set de șiruri și o formă de logică, scrise în expresii booleene.

există suport pentru trei tipuri diferite de siruri de caractere:

  • șiruri hexazecimale, care sunt utile pentru definirea octeților brute;
  • șiruri de Text;
  • expresii regulate.

condițiile sunt expresii booleene pe care le veți recunoaște din limbajele de programare obișnuite. Acestea pot funcționa pe oricare dintre șirurile date, dar și pe variabile speciale încorporate, cum ar fi dimensiunea fișierului sau pe variabile externe pe care le definiți în afara regulii. Există, de asemenea, suport pentru utilizarea modulelor, cum ar fi cucul, pentru a extinde caracteristicile pe care le puteți utiliza în condiții.

veți beneficia cel mai mult de YARA dacă îi oferiți un set de reguli bun. Puteți scrie propriile reguli sau le puteți obține de la un alt furnizor.

scrieți propriile reguli

scrierea propriilor reguli nu este atât de dificilă dacă luați în considerare aceste linii directoare:

  • criteriile pe care le utilizați pentru a se potrivi trebuie să fie o parte necesară a comportamentului malware-ului.
  • criteriile ar trebui să fie suficiente pentru a distinge familia malware testată de alte familii malware.
  • criteriile trebuie să fie ceva care este comun în diferite eșantioane.

după ce ați analizat malware-ul și ați extras date utile, recunoscute din acesta, puteți transforma informațiile în șiruri YARA și le puteți combina cu o formă de logică.

Obțineți reguli din surse externe

deoarece YARA folosește semnături similare cu soluțiile antivirus, ar avea sens să reutilizați aceste semnături ca bază de date de regulă. Cu utilizarea scriptului clamav_to_yara.py, puteți converti baza de date de semnături ClamAV în propriul set de reguli.

o altă sursă pentru reguli este depozitul Github YaraRules. Acesta este un set de reguli sub licența GNU-GPLv2 menținut de un grup de cercetători în domeniul securității IT. Regulile sunt stocate în diferite categorii — reguli menite să detecteze tehnici anti-depanare și anti-Vizualizare, documente rău intenționate, ambalatori etc. – și actualizate frecvent. Le puteți obține prin clonarea depozitului Github.

unele platforme de partajare a informațiilor despre amenințări, cum ar fi MISP și ThreatConnect, acceptă, de asemenea, YARA. Acest lucru vă permite să construiți reguli pe baza propriilor informații despre amenințări colectate.

generează automat reguli

cu ajutorul generatorului de reguli de la Joe Sandbox, puteți crea semnături pentru Windows pe baza datelor de comportament statice și dinamice. Rețineți că se aplică aceleași reguli ca atunci când utilizați sandbox-uri gratuite de analiză malware online. Încărcați fișierele într-un serviciu cloud extern, ceea ce nu ar trebui să se facă cu fișiere sensibile sau date care conțin orice formă de acreditări de utilizator.

cazuri suplimentare de Utilizare

am menționat mai devreme că puteți converti baza de date ClamAV într-un set de reguli utilizabil. De asemenea, merge invers. Să presupunem că aveți un set de reguli detaliate. Puteți configura ClamAV pentru a extinde setul de caracteristici cu regulile furnizate și pentru a sprijini YARA. Acest lucru vă permite să potriviți regulile privind fișierele comprimate sau ambalate. VirusTotal private API are, de asemenea, o caracteristică cu care puteți introduce propriile reguli și le puteți declanșa atunci când este încărcat un eșantion de potrivire.

protecția pe bază de semnătură nu este suficientă

numai bazându-se pe protecția pe bază de semnătură nu mai este suficient de bun. Atacatorii au dezvoltat contramăsuri pe care le pot folosi pentru a ocoli această metodă. Cu ajutorul diferitelor servicii de criptare, packers și polimorfism, acestea pot genera cu ușurință malware care este suficient de diferit, astfel încât să nu mai corespundă semnăturilor existente. Apoi durează ceva timp înainte ca noua aromă să fie preluată și o semnătură să fie împărtășită.

aceste dezavantaje nu fac detectarea pe bază de semnătură învechită. Comunitatea de securitate este puternică în schimbul de noi indicatori de amenințare, astfel încât aceste tipuri de instrumente se vor dovedi în continuare un atu important pentru arsenalul dvs.

concluzie

deși detectarea bazată pe semnături cu YARA are limitele sale, este un mod ușor de utilizat și destul de simplu de a detecta malware în mediul dvs. Nu ar fi înțelept să se bazeze pe ea ca singura măsură de protecție împotriva amenințărilor, dar având în vedere utilizarea directă, lipsa acestui instrument nu ar fi o idee bună.

You might also like

Lasă un răspuns

Adresa ta de email nu va fi publicată.