rsp+
(en la pila)
(lldb) Comando | Descripción |
run (r) | Iniciar la ejecución, que continuará sin interrupciones hasta que se alcance un punto de interrupción o el proceso termine. |
continue (c) | Continuar la ejecución del proceso depurado. |
nexti (n / ni) | Ejecutar la siguiente instrucción. Este comando omitirá las llamadas a funciones. |
stepi (s / si) | Ejecutar la siguiente instrucción. A diferencia del comando nexti, este comando entrará en las llamadas a funciones. |
finish (f) | Ejecutar el resto de las instrucciones en la función actual ("frame") y detenerse. |
control + c | Pausar la ejecución. Si el proceso se ha ejecutado (r) o continuado (c), esto hará que el proceso se detenga ... dondequiera que se esté ejecutando actualmente. |
breakpoint (b) | b main #Cualquier función llamada main b <nombre_bin>`main #Función principal del binario b set -n main --shlib <nombre_lib> #Función principal del binario indicado b -[NSDictionary objectForKey:] b -a 0x0000000100004bd9 br l #Lista de puntos de interrupción br e/dis <número> #Habilitar/Deshabilitar punto de interrupción breakpoint delete <número> |
help | help breakpoint #Obtener ayuda del comando breakpoint help memory write #Obtener ayuda para escribir en la memoria |
reg | reg read reg read $rax reg read $rax --format <formato> reg write $rip 0x100035cc0 |
x/s <dirección_reg/memoria> | Mostrar la memoria como una cadena terminada en nulo. |
x/i <dirección_reg/memoria> | Mostrar la memoria como instrucción de ensamblador. |
x/b <dirección_reg/memoria> | Mostrar la memoria como byte. |
print object (po) | Esto imprimirá el objeto al que hace referencia el parámetro po $raw
Tenga en cuenta que la mayoría de las API o métodos de Objective-C de Apple devuelven objetos y, por lo tanto, deben mostrarse mediante el comando "print object" (po). Si po no produce una salida significativa, use |
memory | memory read 0x000.... memory read $x0+0xf2a memory write 0x100600000 -s 4 0x41414141 #Escribir AAAA en esa dirección memory write -f s $rip+0x11f+7 "AAAA" #Escribir AAAA en la dirección |
disassembly | dis #Desensamblar la función actual dis -n <nombre_func> #Desensamblar función dis -n <nombre_func> -b <nombre_base> #Desensamblar función |
parray | parray 3 (char **)$x1 #Comprobar el array de 3 componentes en el registro x1 |