Question:
Déterminer l'algorithme de chiffrement
omghai2u
2013-03-31 08:12:12 UTC
view on stackexchange narkive permalink

J'analyse un logiciel qui semble crypter ses communications sur le réseau, mais il ne semble pas être SSL. Comment puis-je déterminer facilement quel algorithme de chiffrement il utilise et peut-être trouver la clé?

Juste pour clarifier. Souhaitez-vous identifier l'algorithme de chiffrement en fonction du code d'assemblage de l'algorithme de chiffrement ou uniquement en fonction des paquets chiffrés?
@perror J'ai accès aux binaires et au trafic réseau qui en résulte. Alors, ce qui est le plus facile. L'utilisation des plugins IDA suggérés a résolu mon problème immédiat, mais y a-t-il un moyen plus simple, pour référence future, de le faire uniquement en fonction du trafic réseau? J'aurais supposé que puisque le trafic n'avait pas d'en-tête ou d'informations identifiables, cela ne serait pas possible.
Quatre réponses:
#1
+13
mrduclaw
2013-03-31 08:14:20 UTC
view on stackexchange narkive permalink

Jetez un œil à ce plugin IDA.

Après avoir localisé les fonctions cryptographiques, faire une référence croisée dans IDA devrait vous permettre de voir où les fonctions sont appelées et probablement la clé est à proximité. Si vous pouvez définir un point d'arrêt sur ces fonctions et voir ce qui est passé pour la clé, ce serait bien sûr le moyen le plus simple.

Je cette il existe une version mise à jour, FindCrypt2 http://www.hexblog.com/?p=28
#2
+9
0xea
2013-03-31 15:26:36 UTC
view on stackexchange narkive permalink

Pour une méthode un peu plus avancée d'identification cryptographique automatique, consultez les travaux de Felix Gröbert sur l ' Identification automatique des primitives cryptographiques dans les logiciels. Il utilise un pintool pour instrumenter dynamiquement le code qui peut même permettre de récupérer des clés. Le code est également disponible. Le référentiel contient d'autres outils utilisés en comparaison, tels que les plugins PeID et OllyDBG.

#3
+7
amccormack
2013-03-31 08:39:35 UTC
view on stackexchange narkive permalink

Je ne l'ai pas utilisé mais il existe un outil open source appelé Aligot qui peut aider lorsque les algorithmes de chiffrement ont été obscurcis. Selon ses auteurs, Aligot peut identifier TEA, MD5, RC4 et AES.

Aligot a un avertissement important:

Aligot a été construit comme une preuve de concept pour illustrer les principes décrits dans le document associé. En particulier, il n'est actuellement pas adapté pour analyser automatiquement les grands programmes. Si vous êtes intéressé par un tel projet, veuillez contacter l'auteur;)

Malgré l'avertissement, les résultats indiqués dans l'article suggèrent qu'Aligot vaut la peine d'être examiné.

#4
+5
alexanderh
2013-04-02 21:49:52 UTC
view on stackexchange narkive permalink

Une belle combinaison de findcrypt2 par HexRays et du travail effectué par Felix Gröbert est IDAScope. C'est très utile pour rechercher et identifier les algorithmes de cryptage. Pour plus d'informations sur l'identification cryptographique d'IDAScope, je vous recommande le lien suivant.

Comment s'améliore-t-il sur findcrypt2 et HexRays? Qu'est-ce qui le rend meilleur, plus rapide, etc.?


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...