Semnarea codului este o metodă de utilizare a unei semnături digitale bazate pe certificat pentru o bucată de software, astfel încât sistemul de operare și utilizatorii să poată determina siguranța acesteia. Numai software-ul corect poate folosi semnătura digitală corespunzătoare.
Utilizatorii pot descărca și instala software în siguranță, iar dezvoltatorii își protejează reputația produselor prin semnarea codului. Cu toate acestea, hackerii și distribuitorii de programe malware folosesc exact acel sistem pentru a obține coduri rău intenționate prin suite antivirus și alte programe de securitate . Deci, ce este malware-ul semnat de cod și cum funcționează?
Ce este programul malware semnat de cod?
Când software-ul este semnat digital, înseamnă că are o semnătură digitală oficială. Autoritatea de certificare emite un certificat unui software pentru a determina dacă software-ul este legal și sigur de utilizat.
Utilizatorii nu vor trebui să-și facă griji deoarece sistemul de operare va verifica certificatul și acea semnătură digitală. De exemplu, Windows utilizează un lanț de certificate care conține toate certificatele necesare pentru a se asigura că software-ul este legitim.
Lanțul de certificate conține toate certificatele necesare pentru a certifica entitatea identificată de certificatul final. De fapt, acesta constă dintr-un certificat terminal, un certificat CA intermediar și un certificat CA rădăcină în care toate părțile din lanț au încredere. Fiecare certificat CA intermediar din lanț conține un certificat emis de CA cu un nivel mai sus. CA rădăcină emite certificate pentru sine.
Odată ce sistemul este pornit și funcționează, puteți avea încredere în software, sistemul de semnare a codului și CA. Programele malware sunt software rău intenționat, nu sunt de încredere și nu au acces la autoritatea de certificare sau semnarea codului.
Hackerii fură certificate de la Autoritatea de Certificare
Software-ul antivirus știe că programele malware sunt rău intenționate, deoarece vă afectează negativ sistemul. Declanșează avertismente, utilizatorii raportează probleme, iar software-ul antivirus poate crea semnături malware pentru a proteja alte computere care folosesc același motor antivirus.
Cu toate acestea, dacă creatorii de malware ar putea semna malware folosind semnături digitale oficiale, procesul de mai sus nu ar avea loc. În schimb, malware-ul codificat poate intra în sistem pe calea oficială, deoarece software-ul antivirus și sistemul de operare nu detectează nimic periculos.
Potrivit cercetării Trend Micro, întreaga piață a programelor malware se concentrează pe sprijinirea dezvoltării și distribuției de programe malware semnate de cod. Operatorii de programe malware au acces la certificate valide utilizate pentru a semna cod rău intenționat. Tabelul de mai jos arată cantitatea de programe malware care utilizează semnarea codului pentru a evita software-ul antivirus din aprilie 2018.

Cercetările Trend Micro arată, de asemenea, că aproximativ 66% dintre programele malware au semnături digitale. În plus, există anumite tipuri de programe malware care au versiuni multiple de semnături digitale, cum ar fi troieni , droppers și ransomware .
De unde provine certificatul digital pentru semnarea codului?
Distribuitorii și dezvoltatorii de programe malware au două moduri de a crea programe malware semnate de cod. Ei fură certificate de la Autoritatea de Certificare prin achiziționarea sau uzurparea identității unei organizații legitime și solicitând un certificat de la CA.
După cum puteți vedea, CA nu este singurul loc vizat de hackeri. Distribuitorii cu acces la certificate legitime pot vinde certificate de încredere semnate digital dezvoltatorilor și distribuitorilor de programe malware.
O echipă de cercetare în domeniul securității de la Universitatea Masaryk din Republica Cehă și Centrul de securitate cibernetică din Maryland a descoperit patru organizații care vindeau certificate Microsoft Authenticode cumpărătorilor anonimi. Odată ce un dezvoltator de programe malware are un certificat Microsoft Authenticode, poate semna orice posibil malware prin semnarea codului și protecția bazată pe certificat.
În alte cazuri, în loc să fure certificate, hackerii se vor infiltra în serverul de compilare a software-ului. Când o nouă versiune de software este lansată, aceasta va avea un certificat legitim, hackerii profită de acest proces pentru a adăuga cod rău intenționat.
Exemplu de malware semnat de cod
Deci, cum arată malware-ul semnat de cod? Mai jos sunt trei exemple de acest tip de malware.
- Stuxnet malware : Acest malware a distrus programul nuclear al Iranului folosind două certificate furate și patru vulnerabilități zero-day. Aceste certificate au fost furate de la două companii JMicron și Realtek. Stuxnet a folosit certificate furate pentru a evita noua cerință de introducere a Windows conform căreia toți driverele necesită verificare.
- Încălcarea serverului Asus: între iunie și noiembrie 2018, hackerii au pătruns într-un server Asus pe care companiile îl folosesc pentru a trimite utilizatorilor actualizări de software. Cercetările de la Kaspersky Lab arată că aproximativ 500 de mii de dispozitive Windows au primit această actualizare rău intenționată înainte de a fi detectate. Fără a fura certificate, acești hackeri semnează certificate digitale Asus legitime pentru malware-ul lor înainte ca serverul de software să distribuie actualizări de sistem.
- Malware Flame: Varianta a programului malware al modulului Flame care vizează țările din Orientul Mijlociu, folosind certificate semnate fraudulos pentru a evita detectarea. Dezvoltatorii Flame au folosit un algoritm de criptare slab pentru a falsifica certificatele digitale de semnare a codului, făcând să pară ca și cum Microsoft le-ar fi semnat. Spre deosebire de Stuxnet, care se dorește a fi distructiv, Flame este un instrument de spionaj, care caută fișiere PDF, fișiere AutoCAD, fișiere text și alte tipuri de documente industriale importante.
Cum să evitați malware-ul semnat de cod?
Acest tip de malware folosește semnarea codului pentru a evita detectarea de către software-ul și sistemele antivirus, astfel încât protejarea împotriva programelor malware semnate de cod este extrem de dificilă. Actualizarea permanentă a software-ului și a sistemelor antivirus este esențială, evitați să faceți clic pe linkuri necunoscute și verificați cu atenție de unde provine linkul înainte de a-l urma. Consultați articolul Riscurile cauzate de malware și cum să le evitați .