- 1. GDB 설치하기
- sudo apt update -y && sudo apt install gdb -y
2. GDB로 파일 실행하기
- gdb "파일명" [파일의 인자]
- gdb ./license_1
3. 디스어셈블하기
- (gdb) disas main
- disas == disassemble
- 참고: (gdb) disassembly-flavor intel (intel형 어셈블리어로 보기)
- (gdb) break [함수 | 절대, 상대주소]
- break *main
- break
- 참고
- info break: 현재 브레이크포인트 정보 확인)
- delete [num]: 인자가 있으면, num 브레이크포인트 삭제 / 없으면, 전체 삭제
- run [인자]: gdb 실행 시 준 파일을 실행함(실행 도중 "run" 입력 시 처음부터 다시 실행)
- continue: breakpoint 이후 실행
- ni: 다음 cpu단계로 이동
lincense1 리버싱해보기
run [아무 인자]
main+69: callq에서 strcmp@plt는 문자열 비교를 뜻하는 걸로 추정된다.
그렇기 때문에 main+69에 브레이크포인트 지정
- disass *main+69
- x/s $rsi 후 x/s $rdi
- x/s == 문자열 형태로 데이터를 보겠다.
나가서 실행하기
반응형