[1] GDB란?
-> GNU Debugger의 약자로 오픈소스로 공개되어 있는 무료 디버거이다.
-> 설치 방법은 sudo apt-get install gdb 입력
*gdb-peda를 이용하면 더 편리하게 볼 수 있다. 설치방법은
git clone https://github.com/longld/peda.git ~/peda
echo "source ~/peda/peda.py" >> ~/.gdbinit
위 2줄을 입력하는 것이다.
[2] 명령어
-> b *[메모리 주소/함수이름/offset] : breakpoint를 거는 명령어
-> continue : 다음 breakpoint까지 실행하는 명령어
-> info b : breakpoint 정보를 확인하는 명령어
-> d (brdakpoint 번호) : breakpoint 삭제하는 명령어
-> run : gdb내부에서 프로그램을 실행하는 명령어이다.
-> disass (함수) : 함수의 어셈블리 코드를 출력한다.
-> info func : 특정 함수의 정보를 출력한다.
-> info reg : 특정 레지스터 정보를 출력한다.
-> print (함수) : 해당 함수의 주소를 출력한다.
-> finish : 현재 함수를 수행하고 빠져나간다.
-> list : 디버깅 중인 프로그램 C언어 소스를 보여준다.
-> bt : 현재 프로그램 스택에 있는 내용을 보여준다.
'Security study > Pwnable' 카테고리의 다른 글
[pwnable.kr] bof (0) | 2021.05.19 |
---|---|
gdb 활용 코드 분석 (0) | 2021.05.12 |
[pwnable.kr] collision 문제 풀이 (0) | 2021.05.05 |
setuid 개념 정리 (0) | 2021.05.05 |
[2주차 과제] swing_pwn_chall 풀이 (0) | 2021.04.28 |