Base Relocation Table(PE 재배치)


Base Relocation Table(PE 재배치)

1. PE 재배치 - PE 파일(EXE/DLL/SYS)이 프로세스 가상 메모리에 로딩(Loading)될 때 PE헤더의 ImageBase 주소에 로딩 된다. DLL 파일의 경우 ImageBase 위치에 이미 다른 DLL 파일이 로딩되어 있다면 다른 비어 있는 주소 공간에 로딩된다. 이것을 PE 재배치라고 한다. 즉 PE 재배치란 PE 파일이 ImageBase에 로딩되지 못하고 다른 주소에 로딩될 때 수행되는 일련의 작업들을 의미한다. 2. ASLR(Address Space Layout Randomiztion) - 프로세스가 생성될 때 EXE 파일이 가장 먼저 메모리에 로딩되기 때문에 EXE에서는 재배치를 고려할 필요가 없었다. Windows Vista 이후부터는 보안 강화를 위해 ASLR 기능이 추가되었고 즉 EXE 파일이 실행될 때 마다 랜덤한 주소에 로딩한다. 3. PE 재배치 발생시 수행되는 작업 - 현재 Windows 7에서 notepad.exe의 EP는 00253689이다. ...



원문링크 : Base Relocation Table(PE 재배치)