Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
ndhquals2015:crackme_prime [2015/04/05 15:02] Spl3en |
ndhquals2015:crackme_prime [2017/04/09 15:33] (Version actuelle) |
||
---|---|---|---|
Ligne 57: | Ligne 57: | ||
29 | 29 | ||
- | De plus, on remarque l'utilisation d'une fonction ''c1'' que l'on a pas encore analysé. | + | Chaque sous partie de 4 caractère passe dans ''strtol'' ayant pour argument 16, ce qui nous indique que ces sous parties doivent être de l'hexadécimal. |
- | Elle prend en entrée un mot de 16 bits récupéré depuis notre argument. | + | En fin de block, on remarque l'utilisation d'une fonction ''c1'' que l'on n'a pas encore analysé. |
+ | |||
+ | Elle prend en entrée un mot de 16 bits, récupéré depuis les sous parties de 4 caractères hexa. | ||
Un rapide aperçu du flow graph de cette fonction nous indique qu'elle est complexe : | Un rapide aperçu du flow graph de cette fonction nous indique qu'elle est complexe : | ||
{{http://puu.sh/h2ekZ/8c485f4fd4.png}} | {{http://puu.sh/h2ekZ/8c485f4fd4.png}} | ||
- | Elle appelle des fonctions telles que ''aes_init'', ''aes_decrypt'', ''EVP_aes_256_cbc'', laissant supposer que de l'AES-256 CBC est utilisé. | ||
Plutôt que d'analyser cette fonction, nous allons nous intéresser à sa sortie : 0, 1, ou -1 en cas d'erreur. | Plutôt que d'analyser cette fonction, nous allons nous intéresser à sa sortie : 0, 1, ou -1 en cas d'erreur. |