본문 바로가기

Reverse Engineering

2. 지역변수 출력 어셈블리어 코드

2. 지역변수 출력 어셈블리어 코드

 

 

 

 본 포스팅의 내용은 해킹 맛보기 책의 내용중 3장 리버스 엔지니어링 P133~P281 까지

 실습 내용을 따라하기 해보았습니다. 책의 내용중 일부 발췌 (수정) 하였습니다. 문제가 될 때는 비공개 하도록 하겠습니다.

 

 

 

#include <stdio.h>


int main()

{

int lv = 2;


printf("%xn", lv);

return 0;

}

 

 

지역 변수를 출력하는 어셈블리어 코드


MOV DWORD PTR SS:[EBP-8],2

 

 

[발췌-수정]

지역 변수로 선언된 lv는 어셈블리어로 보면 스택에 저장된다.

EBP 레지스터는 스택 변수에 접근하기 위해 스택의 특정 위치를 가리킨다.

lv는 EBP 레지스터에서 8만큼 떨어져 있는 곳에 할당된 것을 확인 할 수 있다.