Last active
January 9, 2019 14:37
-
-
Save xshill/d80e0f85009cda992143f2cc9531f81f to your computer and use it in GitHub Desktop.
c sick radare
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
======== Ouvrir radare2 ======== | |
Ouvrir un programme dans radare2: `r2 file_path` | |
Ouvrir un programme dans radare2 en mode debug: `r2 -d file_path` | |
Lancer radare2 avec un programme qui roule deja: `r2 -d program_pid` | |
======== Commandes de base ======== | |
`aaa`: analyse toute (toujours faire ca au debut) | |
`q`: quitter | |
`v`: mode visuel (tres tres cool) | |
`s XXXX`: aller a l'adresse X | |
ex: `s 0x400010` pour aller a l'adresse 0x400010 | |
ex: `s main` pour aller a la fonction main | |
ex: `s sym.my_function` pour aller a la fonction "sym.my_function" [les noms des fonctions commencent souvent par "sym."] | |
`doo`: ouvre une nouvelle instance du programme, en mode debug | |
`afvn`: renommer une variable de la fonction actuelle (memo: afvn == alter/analyze function variable name) | |
ex: `afvn local_10h counter` renomme la variable "local_10h" a "counter" | |
`afn`: renommer la fonction actuelle | |
ex: `afn important_function` renomme la fonction actuelle a "important_function" | |
`?`: afficher l'aide | |
`a?`: afficher l'aide pour les commandes debutant par "a" (fonctionne pour toutes les lettres) | |
`aa?`: afficher l'aide pour les commandes debutant par "aa" | |
`? <expression>`: evalue une expression et affiche le resultat sous plusieurs formes (decimal, hexadecimal, string, etc.) | |
ex: `? 40 + 25` affichera (entre autres) les valeurs 65, 0x41 et le caractere 'A' | |
ex: `? [XXXX]` affichera la valeur a l'adresse XXXX | |
ex: `? main`, `? sym.my_function` affichent l'adresse de "main" et de "sym.my_function" (fonctionne pour tous les symboles) | |
======== Raccourcis du mode visuel/mode graphe ======== | |
haut/bas: se deplacer | |
`shift+v`: mode graphe | |
`q`: quitter le mode visuel/graphe | |
`p`: mode d'affichage suivant | |
`shift+p`: mode d'affichage precedent | |
`escape`: permet d'entrer des commandes dans un mode visuel (comme dans vim, les commandes sont ecrites au bas de l'ecran) | |
`s`: step in (execute une instruction, rentre dans les call) [mode debug seulement] | |
`shift+s`: step over (execute une instruction, saute par dessus les call) [mode debug seulement] | |
`b`: mettre un breakpoint a "l'adresse de seek" (adresse actuelle, la premiere adresse en haut) | |
======== Informations utiles ======== | |
Les commandes textuelles supportent le tab-completion. | |
ex: `s <TAB>` affichera une liste de tous les symboles auxquels on peut se deplacer | |
ex: `s sym.<TAB>` affichera une liste de tous les symboles commencant par `sym.` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment