공부/시스템

pwngdb - 2

B612 2023. 11. 17. 06:45

pwndbg는 주요 메모리들의 상태를 가독성 좋게 표현해준다.

 

크게 4개의 영역으로 구분된다.

  • REGISTERS : 레지스터의 상태를 보여줌
  • DISASM : rip부터 디스어셈블된 결과를 보여줌
  • STACK : rsp부터 스택의 값들을 보여줌
  • BACKTRACE : 현재 rip에 도달할 때까지 어떤 함수들이 중첩되어 호출됐는지 보여줌

main 함수에 중단점을 걸고, 실행했다.

 

disassemble 명령어에 함수 이름을 인자로 전달하면 해당 함수가 반환될 때 까지 모두 디스어셈블 해 보여준다.

 

 

ni와 si는 어셈블리 명령어를 한 줄 실행한다.

ni는 내부로 들어가지 않지만, si는 내부로 들어간다.

 

현재는 rip가 0x401176을 가르키고 있다.

 

ni 명령어 실행 시

<ni 명령어 실행 시>

현재는 다음 줄로 rip가 이동한 것을 확인했다.

 

si 명령어 실행 시

<si 명령어 실행 시>

printf 함수 내부로 rip가 이동했다.

 

finish

<finish 명령어 실행 시>

함수의 끝까지 한 번에 실행

'공부 > 시스템' 카테고리의 다른 글

드림핵 > shell_basic  (2) 2024.01.04
pwngdb - 1  (1) 2023.11.16