'Program/Security Programing'에 해당되는 글 1건

GDB 란?

- 어셈블리 언어로 프로그램이 실행되면서 Address를 따라가는 진행하는 상태를 볼 수 있는 것

- i r esp... break main으로 해당 내용을 볼 수 있도록 함, 16, 10, 8 진수로 해당 내용을 봄

- 자주 사용하다 보면 eip를 많이 보는데, EIP 레지스터란 프로그램이 실행되는 동안 메모리 주소에 있는 현재 명령을 가리키는 "포인터" 라고 생각하는 개념


사용법: gdb -q "실행할 파일 경로"


  • list : 실행 code를 보여줌
  • Run: 프로그램을 실행함
  • Break Point(지점 설정):  실행하는 Code의 지정하여 순서에 Break를 걸어 설정함

int main() {

char A(40);


strcpy(A, "tistory good!\n");

printf(A);


}

- break strcpy 로 해당 함수의 코드를 Break 걸수 있음

- break 6 이면 6번이 중지점이 됨


  1. 중지점으로 EIP의 메모리의 Address를 주목하여 봄
  2. i r eip로 해당 Address 를 보는 연습해보기

  • bt :스택을 되돌아보는데 사용하는 명령어


블로그 이미지

티스토리 가입자

보여주기 위한 블로그가 아닌 나를 위한 블로그... 그것이 당신에게 도움이 된다면... 공유가 되겠지요.... 그게 내 블로그의 모티브...

,