반응형

먼저 PE가 메모리에 적재되기 전에 파일의 기본 ImageBase는 0이다.

그리고 PE안에서는 상대주소로 주소가 적혀있게되는데, 왜냐하면 메모리에 적재되어 있을때 절대주소가 들어가있게된다면 Relocation이 어렵기때문이다.(하드코딩) 반면에 상대주소가 들어가있게 된다면 주어지는 ImageBase에서 얼마만큼 떨어진 곳으로 이동하면 되기때문에 Relocation이 쉽게 된다.


예를 들면,


ImageBase : 0x00400000

VA : 0x1000

이라고 했을때 절대 주소가 되는 값은 0x00401000이 된다는 말이다.


즉, VA와 RVA, ImageBase로 식을 나타내면

RVA + ImageBase = VA

상대주소 + 베이스주소 = 절대주소

이 된다.

'공부' 카테고리의 다른 글

Easy Crack Me[Would you Crack Me?]  (0) 2015.05.30
[C++] Template  (0) 2015.01.02
[리버싱 핵심원리]PE File Format #1 -- 미완성  (0) 2014.12.24
MIPS 명령어  (0) 2014.11.21
새로 알게 된것  (0) 2014.11.02
블로그 이미지

KuroNeko_

KuroNeko

,