FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Logiciel malveillant signé par code : définition, risques et protections efficaces

La signature de code est une méthode cryptographique qui permet de vérifier l'authenticité et l'intégrité d'un logiciel. Les systèmes d'exploitation et les utilisateurs s'appuient dessus pour confirmer la sécurité du programme. En général, elle fonctionne efficacement : seul le logiciel légitime utilise une signature valide.

Les utilisateurs peuvent ainsi télécharger et installer en toute confiance, tandis que les développeurs préservent la réputation de leurs produits. Cependant, les cybercriminels exploitent ce mécanisme pour faire passer leurs malwares au travers des antivirus et outils de sécurité.

Qu'est-ce qu'un logiciel malveillant signé par code ?

Un logiciel malveillant signé par code porte une signature cryptographique officielle délivrée par une autorité de certification (AC). Cette dernière atteste de la légitimité et de la sécurité du programme.

Votre système d'exploitation gère automatiquement la validation des certificats. Par exemple, Windows repose sur une chaîne de certificats, qui inclut tous les éléments nécessaires pour authentifier le logiciel à chaque étape.

"Une chaîne de certificats est constituée de tous les certificats nécessaires pour certifier le sujet identifié par le certificat final. En pratique, cela inclut le certificat final, les certificats des AC intermédiaires et le certificat d'une AC racine approuvée par toutes les parties de la chaîne. Chaque AC intermédiaire détient un certificat émis par l'AC supérieure dans la hiérarchie de confiance. L'AC racine émet un certificat pour elle-même."

Quand tout est en ordre, vous pouvez faire confiance au logiciel. Ce système repose sur une confiance absolue envers les AC. Les malwares, par nature, ne devraient pas y accéder. Dans la pratique, cela tient... jusqu'à ce que les cybercriminels contournent les protections.

Les pirates volent des certificats aux autorités de certification

Les antivirus détectent les malwares par leurs comportements suspects, alertes utilisateurs et signatures virales partagées.

Mais un malware signé avec un certificat officiel échappe à ces contrôles. Votre antivirus et OS le considèrent comme légitime.

Les recherches de Trend Micro révèlent un marché noir dédié aux malwares signés. En avril 2018, environ 66 % des échantillons analysés étaient signés, notamment les chevaux de Troie, droppers et ransomwares. (Découvrez sept façons d'éviter une attaque de ransomware !)

Logiciel malveillant signé par code : définition, risques et protections efficaces

D'où viennent les certificats de signature de code ?

Les cybercriminels obtiennent ces certificats volés à des AC ou via des fournisseurs peu scrupuleux. Ils peuvent aussi imiter des entreprises légitimes.

Les AC sont des cibles prioritaires. Des chercheurs de l'université Masaryk (République tchèque) et du Maryland Cybersecurity Center ont identifié quatre organisations vendant des certificats Microsoft Authenticode à des acheteurs anonymes. [PDF]

"De récentes mesures de l'écosystème des certificats de signature de code Windows ont mis en évidence diverses formes d'abus permettant aux auteurs de malwares de produire du code portant des signatures numériques valides."

Avec un certificat Authenticode, un malware contourne les sécurités Windows basées sur les certificats.

Parfois, les pirates compromettent des serveurs de build pour injecter du code malveillant dans des mises à jour légitimes.

3 exemples de logiciels malveillants signés par code

Voici trois cas emblématiques :

  1. Malware Stuxnet. Responsable de la sabotage du programme nucléaire iranien, il a utilisé deux certificats volés (JMicron et Realtek) et quatre zero-days pour contourner les vérifications pilotes Windows.
  2. Violation du serveur Asus. De juin à novembre 2018, des hackers ont infecté 500 000 mises à jour Asus via un serveur compromis, utilisant des certificats légitimes pour cibler 600 machines spécifiques (Kaspersky Lab).
  3. Malware Flame. Variante modulaire espionnant le Moyen-Orient, il forgeait des certificats Microsoft via un algorithme faible pour extraire documents sensibles (PDF, AutoCAD, etc.). (Qu'est-ce qu'un malware modulaire ?)

Comment éviter les logiciels malveillants signés par code ?

Ces attaques sont souvent ciblées, mais leur succès encourage leur prolifération. La protection est challenging :

- Maintenez OS et antivirus à jour.
- Évitez les liens suspects et vérifiez leur destination.
- Consultez nos conseils pour éviter les malwares !

[]