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. | ||