Analizând datele procesate de CERT-RO în ultimii ani cu privire la diferite variante de malware, dar şi informaţiile publicate în această perioadă de diferite organizaţii ce activează în domeniul securităţii cibernetice, rezultă o tendinţă evidentă de diversificare, specializare şi creştere a complexităţii aplicaţiilor maliţioase, fie că vorbim despre APT (Advanced Persistent Threats), botnet, malware financiar (banking botnets) sau Ransomware. Softwareul maliţios reprezintă una dintre cele mai răspândite şi periculoase tipuri de ameninţări cibernetice şi asta din cauza, în primul rând, impactului negativ pe care-l poate avea asupra unui sistem informatic infectat cu un astfel de software.
În prezent există o varietate de tehnici şi tehnologii destinate combaterii acestui tip de ameninţare, precum bine-cunoscutele soluţii de tip antivirus, firewall, IDS, IPS etc., încă destul de eficiente, însă rândurile următoare sunt dedicate conceptului de "Application whitelisting", a cărui implementare îndrăznesc s-o consider de o importanţă deosebită pentru combaterea ameninţării malware.
"Application whitelisting" presupune implementarea unui mecanism care să asigure faptul că în cadrul unui sistem informatic rulează numai softwareul autorizat/cunoscut. La prima vedere pare un obiectiv idealist şi poate că acesta este unul dintre principalele motive pentru care un astfel de mecanism nu are o rată de implementare ridicată, mai ales în rândul organizaţiilor mici şi utilizatorilor casnici. Conceptul în sine nu este ceva nou, reprezentând practic o extindere la nivelul aplicaţie din stiva TCP/IP a abordării de tip "default deny" (nu permite în mod implicit) utilizată de mult timp de tehnologiile firewall.
Implementările corecte de "application whitelisting" presupun:
Unelte care să faciliteze identificarea executabilelor şi librăriilor software (precum DLL în Windows) şi care să permită sau să blocheze rularea acestora;
Metodele de identificare a executabilelor şi librăriilor software nu trebuie să se bazeze pe reguli slabe, precum numele fişierului sau locaţia acestuia în structura de directoare. Cea mai eficientă metodă constă în identificarea acestora pe baza certificatelor digitale cu care sunt semnate sau, în cazul în care nu sunt semnate, pe baza amprentelor digitale de tip "hash";
Mecanisme de tip ACL (Access Control Lists) care să prevină modificarea de către utilizatori a listei programelor software permise.
În prezent, "application whitelisting" este considerată una dintre cele mai importante strategii de combatere a ameninţărilor de tip malware şi există deja o varietate de soluţii tehnice cu ajutorul cărora poate fi implementată, inclusiv de către utilizatorii casnici, mai ales în cadrul sistemelor de operare Windows unde implementarea se poate realiza utilizând uneltele deja conţinute de sistemul de operare:
SRP (Software Restriction Policies) - o facilitate conţinută de unealta Group Policy, începând cu Windows XP;
AppLocker - unealta recomandată începând cu sistemul de operare Windows 7, având acelaşi scop ca şi facilitatea SRP din Group Policy.
În cazul sistemelor de operare Linux/Unix, implementarea "application whitelisting" este ceva mai dificilă, în sensul că nu este încă nativ suportată de kernel şi nici nu există în distribuţiile de Linux importante o unealtă dedicată acestui lucru. Totuşi, există câteva soluţii comerciale care facilitează implementarea, însă acestea depind de versiunea de kernel utilizată şi pot apărea probleme în cazul actualizărilor. Alte variante ar fi utilizarea uneltelor SELinux sau AppArmor, deşi acestea nu au fost proiectate în acest sens şi ar presupune resurse consistente de implementare şi testare.
În anumite cazuri implementarea "application whitelisting" se poate dovedi greoaie şi consumatoare de resurse, însă beneficiile din punct de vedere al prevenirii infecţiilor cu malware sunt considerabile. Mai mult, se obţine un nivel ridicat de vizibilitate în ceea ce priveşte fişierele executabile şi librăriile software introduse într-un sistem informatic, un aspect extrem de util în procesul de investigare a incidentelor de securitate cibernetică.
În încheiere aş îndrăzni să concluzionez că, deşi nicio soluţie de securitate nu poate fi considerată un panaceu, probabil că "application whitelisting" este cea mai eficientă metodă de reducere a impactului generat de malware în cadrul sistemelor informatice utilizate în prezent.
Cătălin Pătraşcu este expert în securitate cibernetică, cu peste opt ani de experienţă relevantă în domeniu. Şi-a început călătoria în domeniul securităţii cibernetice în cadrul Ministerului Apărării Naţionale (2010-2012), a continuat în calitate de coordonator al echipei de răspuns la incidente din cadrul Centrului Naţional de Răspuns la Incidente de Securitate Cibernetică - CERT-RO (2012-2018) şi activează, în prezent, ca manager de livrare de servicii de securitate cibernetică în cadrul unei companii de profil. A gestionat cu succes proiecte în domeniul securităţii cibernetice, a planificat şi moderat exerciţii cibernetice, a gestionat incidente cibernetice la scară naţională şi a efectuat diverse studii pe teme de securitate cibernetică şi criminalitate informatică.