
Unul dintre cele mai frecvente tipuri de atacuri este generarea unui proces malițios în arborele de procese legitime. Suspiciunea poate fi stârnită de calea către fișierul executabil: software-ul malițios utilizează adesea folderele AppData sau Temp, ceea ce nu este caracteristic programelor legitime. De altfel, merită menționat că unele utilitare de actualizare automată sunt executate în AppData, așa că simpla verificare a locului de lansare nu este suficientă pentru a afirma că un program este malițios.
Un alt factor de legitimitate este semnătura criptografică: multe programe originale sunt semnate de furnizor. Absența semnăturii poate fi utilizată ca metodă de identificare a elementelor suspecte din autostart. Dar, din nou, există software malițios care folosește un certificat furat pentru a se semna singur.
De asemenea, se pot verifica valorile hash-urilor criptografice MD5 sau SHA256, care pot corespunde unor programe malițioase cunoscute anterior. Se poate efectua o analiză statică, examinând semnăturile din program (prin reguli Yara sau produse antivirus). De asemenea, există analiza dinamică (executarea programului într-un mediu sigur și monitorizarea acțiunilor sale) și inginerie inversă.
Există numeroase semne ale unui proces malițios. În acest articol, vom explica cum să activăm auditul evenimentelor corespunzătoare în Windows și vom analiza semnele de bază pe care se bazează regula încorporată pentru identificarea unui proces suspect. InTrust este o pentru colectarea, analiza și stocarea datelor nestructurate, care dispune deja de sute de reacții prestabilite la diferite tipuri de atacuri.
Atunci când un program este lansat, acesta se încarcă în memoria computerului. Fișierul executabil conține instrucțiuni computerizate și biblioteci auxiliare (de exemplu, *.dll). Odată ce procesul este deja pornit, acesta poate crea fire suplimentare. Firele permit procesului să execute seturi diferite de instrucțiuni în mod simultan. Există multe moduri de infiltrare a codului malițios în memorie și de lansare a acestuia, să examinăm unele dintre ele.
Cea mai simplă metodă de a lansa un proces malițios este de a determina utilizatorul să îl execute direct (de exemplu, dintr-o atașare de e-mail), apoi, cu ajutorul unei chei RunOnce, să-l ruleze la fiecare pornire a computerului. De asemenea, se poate include și malware-ul „fără fișiere”, care stochează scripturi PowerShell în cheile registrului, ce sunt executate pe baza unui declanșator. În acest caz, scriptul PowerShell este cod malițios.
Problema cu lansarea explicită a software-ului malițios este că este o abordare cunoscută, ușor de descoperit. Unele programe malițioase fac lucruri mai subtile, de exemplu, folosesc un alt proces pentru a începe executarea în memorie. Prin urmare, procesul poate crea un alt proces, executând o anumită instrucțiune computerizată și specificând fișierul executabil (.exe) pentru a fi lansat.
Fișierul poate fi specificat folosind calea completă (de exemplu, C:Windowssystem32cmd.exe) sau calea parțială (de exemplu, cmd.exe). Dacă procesul sursă nu este sigur, acesta va permite rularea programelor ilegitime. Atacul poate arăta astfel: procesul rulează cmd.exe fără a specifica calea completă, iar atacatorul plasează propriul cmd.exe într-un loc astfel încât procesul să-l lanseze înaintea celui legitim. După ce malware-ul este lansat, acesta, la rândul său, poate rula un program legitim (de exemplu, C:Windowssystem32cmd.exe), pentru ca programul sursă să continue să funcționeze corect.
O variantă a atacului anterior este injectarea DLL în procesul legitim. Când procesul este lansat, acesta caută și încarcă biblioteci care îi extind funcționalitățile. Folosind injectarea DLL, atacatorul creează o bibliotecă malițioasă cu același nume și API ca și cea legitimă. Programul încarcă biblioteca malițioasă, care, la rândul său, încarcă biblioteca legitimă și, după cum este necesar, o cheamă pentru a efectua operațiuni. Biblioteca malițioasă începe să joace rolul de intermediar pentru biblioteca bună.
O altă modalitate de a introduce cod malițios în memorie este de a-l insera într-un proces nesigur care este deja în execuție. Procesele primesc date din diverse surse — citesc din rețea sau din fișiere. De obicei, ele efectuează verificări pentru a se asigura de legitimitatea datelor de intrare. Însă, unele procese nu au o protecție adecvată atunci când execută instrucțiuni. În cadrul acestui tip de atac, nu există o bibliotecă pe disc sau un fișier executabil cu cod malițios. Totul este stocat în memorie împreună cu procesul exploatat.
Acum să analizăm metodologia de activare a colectării acestor evenimente în Windows și a regulii din InTrust, care implementează protecția împotriva unor astfel de amenințări. În primul rând, activăm aceasta prin consola de administrare InTrust.

Regula utilizează capacitățile de urmărire a proceselor din Windows. Din păcate, activarea colectării acestor evenimente nu este deloc evidentă. Este necesar să modifici 3 setări diferite ale politicii de grup:
Configurare Computer > Politici > Setări Windows > Setări de Securitate > Politici Locale > Politica de Audit > Auditarea urmării proceselor

Configurare Computer > Politici > Setări Windows > Setări de Securitate > Configurarea avansată a politicii de audit > Politici de Audit > Urmărire Detaliată > Auditarea creării proceselor

Configurare Computer > Politici > Șabloane administrative > Sistem > Auditarea creării proceselor > Inclusiv linia de comandă în evenimentele de creare a proceselor

După activare, regulile InTrust permit detectarea amenințărilor necunoscute anterior, care manifestă un comportament suspect. De exemplu, se pot identifica programul malițios Dridex. Datorită proiectului HP Bromium, se știe cum este structurat un astfel de pericol.

În desfășurarea acțiunilor sale, Dridex folosește schtasks.exe pentru a crea o sarcină programată. Utilizarea acestei utilități din linia de comandă este considerată un comportament foarte suspect, similar fiind și lansarea svchost.exe cu parametrii care indică folderele utilizatorului sau cu parametrii asemănători cu comenzile „net view” sau „whoami”. Iată un fragment din regula corespunzătoare :
detection:
selection1:
CommandLine: '*svchost.exe C:Users\*Desktop\*'
selection2:
ParentImage: '*svchost.exe*'
CommandLine:
- '*whoami.exe /all'
- '*net.exe view'
condition: 1 din acesteaÎn InTrust, tot comportamentul suspect este inclus într-o singură regulă, deoarece cele mai multe dintre aceste acțiuni nu sunt specifice unei amenințări anume, ci sunt mai degrabă suspecte în ansamblu și sunt utilizate în 99% din cazuri în scopuri mai puțin nobile. Această listă de acțiuni include, dar nu se limitează la:
- Procesele care rulează din locuri neobișnuite, cum ar fi folderele temporare ale utilizatorului.
- Un proces de sistem bine cunoscut cu un moștenire suspectă — unele amenințări pot încerca să folosească numele proceselor de sistem pentru a rămâne nedetectate.
- Executarea suspectă a instrumentelor administrative, cum ar fi cmd sau PsExec, atunci când utilizează acreditivele sistemului local sau o moștenire suspectă.
- Operațiuni suspecte de copiere shadow — comportament obișnuit al ransomware-ului înainte de criptarea sistemului, acestea elimină copierea de siguranță:
— Prin vssadmin.exe;
— Prin WMI. - Dump-uri de registru întregi.
- Mișcarea orizontală a codului rău intenționat prin lansarea la distanță a procesului utilizând comenzi precum at.exe.
- Operațiuni locale de grup suspecte și operațiuni de domeniu folosind net.exe.
- Operațiuni suspecte ale firewall-ului folosind netsh.exe.
- Manipulări suspecte ale ACL.
- Folosirea BITS pentru exfiltrarea datelor.
- Manipulări suspecte ale WMI.
- Comenzi script suspecte.
- Încercări de a dumpa fișierele de sistem sigure.
Regula combinată funcționează foarte bine pentru detectarea amenințărilor, cum ar fi RUYK, LockerGoga și alte ransomware-uri, malware și instrumente pentru criminalitate cibernetică. Regula a fost verificată de furnizor în medii operaționale pentru a minimiza alarmele false. Iar datorită proiectului SIGMA, majoritatea acestor indicatori generează un număr minim de evenimente zgomotoase.
Întrucât în InTrust aceasta este o regulă de monitorizare, puteți executa un scenariu de răspuns ca reacție la o amenințare. Puteți folosi unul dintre scenariile integrate sau crea propriul dvs., iar InTrust îl va distribui automat.

În plus, se poate verifica întreaga telemetrie asociată cu evenimentul: scripturi PowerShell, execuția proceselor, manipulări ale sarcinilor programate, activitate administrativă WMI și să le folosești pentru postmortem în cazurile de incidente de securitate.

În InTrust există sute de alte reguli, dintre care câteva sunt:
- Detectarea atacului de downgrade PowerShell — atunci când cineva folosește în mod intentionat o versiune mai veche de PowerShell, deoarece în versiunea anterioară nu exista posibilitatea de auditare a evenimentelor.
- Detectarea autentificării cu nivel înalt de privilegii — atunci când conturile care sunt membre ale unui anumit grup privilegiate (de exemplu, administratorii de domeniu) se autentifică în mod interactiv pe stații de lucru din întâmplare sau din cauza incidentelor de securitate.
InTrust permite implementarea celor mai bune practici de securitate sub formă de reguli presetate pentru detectare și reacție. Dacă consideri că ceva ar trebui să funcționeze diferit, poți crea o copie a regulii și să o configurezi așa cum este necesar. Poți trimite o cerere pentru a efectua un pilot sau pentru a obține distribuții cu licențe temporare prin intermediul site-ului nostru.
Abonează-te la , unde postăm note scurte și linkuri interesante.
Citește alte articole de-ale noastre pe tema securității informațiilor:
(articol popular)
Sursa: habr.com
