web-dev-qa-db-fra.com

La clé de chiffrement du rançongiciel peut-elle être dérivée de la comparaison de fichiers chiffrés et non chiffrés?

Une entreprise possède 10 millions de fichiers, tous les ransomwares cryptés, mais l'entreprise a tous ces 10 millions de fichiers sauvegardés, et presque tous n'ont pas changé. La comparaison de tous ces fichiers avec leurs sauvegardes non chiffrées en plus des autres algorithmes de craquage aiderait-elle à découvrir la clé?

45
David Scott

Ce que vous proposez est une attaque connue en texte brut, et oui, si l'algorithme de chiffrement est suffisamment mauvais, il pourrait être utilisé pour découvrir la ou les clés utilisées pour chiffrer les données, selon le chiffrement utilisé. Je dis clés parce que certains ransomwares utilisent des clés individuelles par fichier, donc casser une clé ne vous donnerait que la clé de ce fichier.

Pratiquement, il est peu probable que cela soit utile, à moins que le schéma de chiffrement du ransomware ne présente une sorte de faille (chiffrement faible, source de données pseudo-aléatoire médiocre, petite clé, etc.) ou que vous ayez accès à des ressources informatiques de déchiffrement massives, vos arrière-petits-enfants pourraient simplement vivre pour voir l'un des fichiers fissurés.

50
GdD

La comparaison de tous ces fichiers avec leurs sauvegardes non chiffrées en plus des autres algorithmes de craquage aiderait-elle à découvrir la clé?

Addendum: fonctionnement habituel des malwares

Une fois activé, le malware tentera de contacter son réseau de commande et de contrôle et soit d'utiliser une clé publique compilée (dont le CCC possède la clé privée) soit de générer, de la manière la plus sécurisée possible, une paire de clés publique/privée, envoyer la clé privée au CCC et supprimer sa copie locale.

Maintenant, le malware a une clé publique. Il génère ensuite soit une seule clé de chiffrement, soit une clé de chiffrement pour chaque fichier qu'il attaque, et chiffre la clé de chiffrement avec la clé publique. De cette façon, il peut utiliser un algorithme symétrique, très rapide, pour crypter le fichier, tout en gardant la clé de décryptage protégée par un algorithme asymétrique plus sûr, bien que beaucoup plus lent.

Le logiciel malveillant crée maintenant une copie chiffrée du fichier cible, puis fait de son mieux pour détruire toutes les copies de l'original (par exemple, les clichés instantanés). Enfin, renomme la copie chiffrée avec le même nom que l'original, plus une extension.

Sans racheter la clé privée et exclure les erreurs de la part des programmeurs (par exemple, ils n'ont pas supprimé la clé privée en toute sécurité localement, et elle peut être récupérée), il n'y a aucune chance d'obtenir la clé symétrique.

Il est toujours possible d'essayer de forcer la partie symétrique du chiffrement, en sachant à quoi ressemble le texte déchiffré et la structure du fichier chiffré (quelque chose comme [32 BYTES SIGNATURE] [4K OF ASYM-ENCRYPTED KEY] [SYM-ENCRYPTED DATA) ]). C'est là que le KPA pourrait entrer en jeu. Mais cela nécessite que le chiffrement symétrique soit vulnérable au KPA.

Théorie

Oui ... et non. Ce que vous proposez serait une "attaque connue en texte brut" (KPA).

Mais même si tous les fichiers ont été chiffrés avec la même clé (ce qui n'est pas du tout une donnée), le temps requis pour une attaque réussie contre un algorithme puissant et correctement implémenté - comme emploient les logiciels malveillants les plus récents - est astronomique. En pratique, vous exécuteriez un décryptage en force brute , en utilisant le texte en clair connu pour confirmer l'exactitude de la clé et le fait qu'elle soit la même pour tous les fichiers (vous ne le saurez qu'à la fin. Jusqu'à ce que vous cassiez le cryptage du premier fichier, vous ne saurez jamais si vous y avez accédé) à 100% de vos fichiers, ou seulement à 0,000000001%).

Ainsi, vous pourriez obtenir la clé de la comparaison, mais vous ne seriez pas dérivé la clé directement depuis celle-ci (cela ne peut être fait que si l'algorithme ou son implémentation a des défauts). Comme l'a observé @Kevin, ces algorithmes seraient résistants aux attaques de texte en clair connues.

Entraine toi

Si vous avez une sauvegarde, restaurez tout à partir d'elle. Les fichiers qui sont encore cryptés et pour lesquels aucune copie suffisante actuelle n'est disponible peuvent être décryptés à l'aide des outils de rançongiciel (c.-à-d. Se rendre et payer), ou vous pouvez essayer plusieurs outils qui tentent d'exploiter les failles connues dans certains implémentations de ransomwares qui exposent la clé, laissent les données originales sous une forme récupérable, ou autorisent raccourcis dans la force brute de la clé .

Gardez à l'esprit que certains auteurs de ransomwares sont également à l'origine de certains de ces soi-disant "outils". À tout le moins, ils doivent être achetés à l'aide d'une carte de crédit plafonnée et traçable avec un solde limité (par exemple, une carte prépayée).

Considérations supplémentaires

J'imagine que vous avez déjà conclu qu'un seul compte utilisateur capable d'accéder à tous ces dix millions de fichiers, entre les mains de quelqu'un pas suffisamment informé pour réaliser que quelque chose de suspect se produit - vous ne cryptez pas 10 M fichiers avec un claquement de doigts - est une très mauvaise chose.

À ce jour, ce type de malware a peu de vecteurs d'attaque et ils sont presque tous basés sur l'exploitation de privilèges utilisateur inutiles. Supprimer ou contrecarrer ces privilèges défigurera efficacement la plupart des logiciels malveillants de ce type, et ce pourrait être une bonne idée de revoir les politiques de sécurité locales et de groupe dans les grandes organisations (aussi, placez des limites/contrôles sur Politiques BYOD . J'ai entendu des rumeurs selon lesquelles certaines variantes de logiciels malveillants deviendraient furtives et attendez avant de chiffrer, selon le nombre de fichiers/partages réseau qu'elles sont en mesure de "voir". Je n'ai pas pu vérifier cela , mais je pense que l'idée n'est pas difficile à avoir, et même si ce n'est pas vrai maintenant = et nécessiterait une approche différente dans l'attaque - aller résider au lieu de courir tout de suite - cela pourrait bien devenir réalité à l'avenir).

L'analyse du trafic - juste contrôler la bande passante vers les différents postes de travail - aurait dû alerter que quelque chose était en cours et même identifier le coupable, même si cela était arrivé trop tard pour de nombreux fichiers.

De plus, si la plupart des fichiers n'ont pas changé, des sauvegardes incrémentielles plus fréquentes sont en ordre. Si seulement 1% des fichiers ont changé, cela signifie qu'avec les mêmes ressources, vous pouvez exécuter des sauvegardes incrémentielles avec une fréquence deux fois plus grande (en fait, ce n'est pas si simple, mais encore).

21
LSerni

Cela dépend .

Supposons que le ransomware fasse un "bon" travail, tous les fichiers seront cryptés avec quelque chose comme AES-GCM, qui (au moment de la rédaction) n'est pas (connu pour être) vulnérable à une attaque en clair connue .

Dans ce cas, les fichiers peuvent ne pas aider beaucoup, uniquement pour vérifier l'exactitude d'une clé forcée brute.

De plus, si le ransomware fait un "bon" travail, la clé différera par machine, donc le forçage brutal de la clé n'aidera pas beaucoup à récupérer d'autres données chiffrées sur une autre machine par le même ransomware.

7
Tobi Nary

En réalité, non. Le chiffrement a depuis longtemps dépassé le point où il est trivial d'inverser par des méthodes comme Known Plaintext et autres. Ce n'est pas seulement une question de XOR-ing le plus gros fichier que vous pouvez trouver contre la version cryptée pour obtenir le flux de clés, ce n'est pas ainsi que les choses fonctionnent dans le cryptage de nos jours. Ransomware utilise des algorithmes de chiffrement standard à haute résistance tels que RSA qui ne sont pas soumis à des solutions aussi simples.

Il est en fait assez intéressant de voir comment ils ont ont changé au cours des dernières années.

Ce que vous pouvez faire, c'est utiliser un échantillon des fichiers d'origine pour identifier les fichiers qui doivent être récupérés à partir des sauvegardes, et par conséquent combien vous ne pouvez pas récupérer qui est perdu pour de bon. Chaque variante de virus de chiffrement a sa propre signature. Certains d'entre eux modifient les noms de fichiers de manière spécifique, certains ont des en-têtes que vous pouvez lire pour identifier les fichiers endommagés, etc.

Et bien sûr, l'utilisation principale de vos sauvegardes est de vous permettre de récupérer. Ne vous fiez pas aux clichés instantanés, la plupart des ransomwares les suppriment de nos jours dans le cadre du processus. Il est vraiment utile d'avoir plusieurs points dans la journée que vous pouvez utiliser comme références.

3
Corey