Alooooors, voyons voir.
Page 123, 22.2 IOLIs Crackme tutorial.
Je trouve ça très bien de mettre ce genre de tutos dans la doc, ça permet une prise en main immédiate de ce genre de logiciel. Surtout dans le cas présent, c'est excellent pour voir ce que le produit vaut. Surtout que ce n'est pas un simple writeup, ça donne différentes manières d'explorer le logiciel en résolvant un problème. Donc go.
Sauf que:
This tutorial has been done using radare PVC version 0.9.2.
On en est à la v2, pas de bol. Et ensuite, ça marche pas mieux:
$ rabin -z crackme0x00
0x00000154 A /lib/ld
Je tente avec rabin2 -z crackme0x00, ça passe, c'est très bien. J'ai plus d'infos à l'écran que dans la doc, mais bon. Je lis une info d'importance: With -S[len] radare prints sequences of characters that are at least len characters long, in the example we used 5. C'est super pratique pour éviter pleins de faux positifs.
Et là, paf. rabin2 utilise le flag -S pour "-S Show sections", et je ne trouve pas l'option du minimum de caractères.
Spa grave, je continue la doc qui dit:
We can dump the flags, to see what has been flagged:
[0x08048360]> flag
(...)
Et j'essaie:
$ radare2 crackme0x00
[0x08048360]> flag
Missing arguments
Apparemment, ça a changé aussi.
Puis après, ça parle de graphe! go:
Now let's print a code graph of the main() function, as our current seek is sym.main, we just type "ag":
TODO: Add graph in ascii art here TODO: http://radare.nopcode.org/img/wk/crackme0x00-sym.main.png (de moi: url broken, pas de chance encore une fois)
Ah, on va voir les graphes:
[0x08048360]> s sym.main
[0x08048414]> ag
digraph code {
graph [bgcolor=white];
node [color=lightgray, style=filled shape=box fontname="Courier" fontsize="8"];
}
[0x08048414]>
Ooooooooooook, et j'en fais quoi? Un fichier est créé quelque part? non. Un message d'erreur? non plus. Je suis heureux, j'ai un entête dot. Mais ensuite?
Etc, etc...
Il y a des exemples sympas.
Mouais, 4 exemples qui datent de plus de deux ans, ça fait léger :(
J'aurais voulu peut-être une pierre de rosette qui fasse la comparaison gdb/radare2, c'est toujours pratique aussi.
Je pense que radare2 est peut-être un peu ce que je cherche, mais sans doc pour se lancer, ça va être chaud. J'ai lu plusieurs solutions chez crackmes.de qui utilisent radare2, je vais déjà essayer avec ça.
Je sais ce qu'on va me dire: contribue à la doc. Mais avant de faire de la doc, faudrait que je sache utiliser l'outil..
[^] # Re: Radare?
Posté par mitsurugi . En réponse au journal Disséquer du binaire sous linux. Évalué à 8.
Alooooors, voyons voir.
Page 123, 22.2 IOLIs Crackme tutorial.
Je trouve ça très bien de mettre ce genre de tutos dans la doc, ça permet une prise en main immédiate de ce genre de logiciel. Surtout dans le cas présent, c'est excellent pour voir ce que le produit vaut. Surtout que ce n'est pas un simple writeup, ça donne différentes manières d'explorer le logiciel en résolvant un problème. Donc go.
Sauf que:
This tutorial has been done using radare PVC version 0.9.2.
On en est à la v2, pas de bol. Et ensuite, ça marche pas mieux:
$ rabin -z crackme0x00
0x00000154 A /lib/ld
Je tente avec rabin2 -z crackme0x00, ça passe, c'est très bien. J'ai plus d'infos à l'écran que dans la doc, mais bon. Je lis une info d'importance: With -S[len] radare prints sequences of characters that are at least len characters long, in the example we used 5. C'est super pratique pour éviter pleins de faux positifs.
Et là, paf. rabin2 utilise le flag -S pour "-S Show sections", et je ne trouve pas l'option du minimum de caractères.
Spa grave, je continue la doc qui dit:
We can dump the flags, to see what has been flagged:
[0x08048360]> flag
(...)
Et j'essaie:
$ radare2 crackme0x00
[0x08048360]> flag
Missing arguments
Apparemment, ça a changé aussi.
Puis après, ça parle de graphe! go:
Now let's print a code graph of the main() function, as our current seek is sym.main, we just type "ag":
TODO: Add graph in ascii art here TODO: http://radare.nopcode.org/img/wk/crackme0x00-sym.main.png (de moi: url broken, pas de chance encore une fois)
Ah, on va voir les graphes:
[0x08048360]> s sym.main
[0x08048414]> ag
digraph code {
graph [bgcolor=white];
node [color=lightgray, style=filled shape=box fontname="Courier" fontsize="8"];
}
[0x08048414]>
Ooooooooooook, et j'en fais quoi? Un fichier est créé quelque part? non. Un message d'erreur? non plus. Je suis heureux, j'ai un entête dot. Mais ensuite?
Etc, etc...
Mouais, 4 exemples qui datent de plus de deux ans, ça fait léger :(
J'aurais voulu peut-être une pierre de rosette qui fasse la comparaison gdb/radare2, c'est toujours pratique aussi.
Je pense que radare2 est peut-être un peu ce que je cherche, mais sans doc pour se lancer, ça va être chaud. J'ai lu plusieurs solutions chez crackmes.de qui utilisent radare2, je vais déjà essayer avec ça.
Je sais ce qu'on va me dire: contribue à la doc. Mais avant de faire de la doc, faudrait que je sache utiliser l'outil..