Signatures numériques non signées / fausses

  • Description: Les signatures numériques sont des mécanismes cryptographiques utilisés pour vérifier l’authenticité et l’intégrité des fichiers. Les fournisseurs de logiciels légitimes signent leurs exécutables () et bibliothèques () avec des certificats de signature de code délivrés par des autorités de certification (CA) de confiance. Cela confirme l’identité de l’éditeur et garantit que le fichier n’a pas été altéré depuis la signature. Les passants peuvent tenter d’utiliser ou d’imiter des signatures pour contourner les contrôles de sécurité ou faire paraître des fichiers malveillants légitimes..exe.dll

  • Techniques d’évasion :

    • Utilisation des certificats volés : Les attaquants acquièrent illicitement des certificats de signature de code légitimes (par exemple, via des violations d’entreprise) et les utilisent pour signer des logiciels malveillants, ce qui les fait paraître d’abord dignes de confiance.

    • Création de certificats faux/auto-signés : Générer des signatures à l’aide de certificats qu’ils ont eux-mêmes créés ou émis par des autorités non fiables ou fausses. Les systèmes d’exploitation et les outils de validation ne feront pas confiance à ces signatures.

    • Modification des fichiers signés : Manipuler le contenu d’un fichier légitimement signé (par exemple, via l’édition hexadécimale) invalidera la signature existante. Les outils de vérification des signatures détecteront cette modification.

    • Usurpation d’informations sur la version : Compilant des malwares avec des informations de version copiées de logiciels légitimes pour rendre ses propriétés crédibles, même si elles sont non signées ou utilisent une fausse signature.

  • Pourquoi les tricheurs l’utilisent : Pour essayer de contourner les outils automatisés de sécurité sociale ou les vérifications manuelles qui pourraient mettre sur liste blanche les fichiers signés ou surtout signaler les fichiers non signés. Une signature (fausse) peut donner une apparence initiale de légitimité.

  • Détection: L’essentiel n’est pas seulement de vérifier l’existence d’une signature, mais de vérifier sa validité et sa fiabilité.

    • Outils de vérification de signature : Utilisez des outils qui effectuent une validation correcte de la signature Authenticode contre les autorités de certification racines de confiance du système. Cela inclut :

      • PowerShell : cmdlet. Vérifiez la propriété (il devrait y avoir des signatures fiables). Des statuts comme , (altéré après la signature), ou / indiquent des problèmes.Get-AuthenticodeSignature C:\path\to\file.exe Status Valid NotSigned HashMismatch UnknownError UntrustedRoot

      • Le script signature de BACA : Ce script PowerShell (mentionné précédemment) automatise la vérification de plusieurs fichiers et rapporte clairement le statut (Valide, Nonsigné, HashMismatch, NotTrusted).

      • Le Paths-Solveur de Spokwn : Cet outil intègre les vérifications de signature (Authenticode et Catalogue) aux côtés d’autres analyses telles que les génériques et les vérifications de remplacement, fournissant un rapport d’état complet pour les listes de fichiers. Il mentionne spécifiquement des triches signées connues comme Slinky et Vape.

      • Vérification manuelle (propriétés du fichier) : Clic droit sur fichier -> Propriétés -> onglet Signatures numériques. Sélectionnez la signature et cliquez sur « Détails ». Vérifiez le statut « Informations sur la signature numérique » (il faut indiquer « Cette signature numérique est OK ») et consultez les détails du certificat (vérifiez l’émetteur et le chemin du certificat).

    • Concentrez-vous sur « NonSigné » et les erreurs : Lors des partages d’écran, prêtez la plus grande attention aux fichiers signalés comme ou ayant des erreurs de signature (, , ) par les outils de vérification, en particulier les exécutables ou DLL trouvés dans des lieux suspects ou via des artefacts d’exécution. Bien que tous les fichiers non signés ne soient pas malveillants, le code non signé chargé par le jeu ou interagissant avec lui est très suspect.NotSigned HashMismatch UntrustedRoot UnknownError

Mis à jour