반응형

PE 2

RVA와 섹션

RVA는 디스크 상에 파일로 존재하는 PE의 파일 오프셋과 함께 로드되어 메모리의 이미지로 존재하는 PE의 메모리 번지 사이의 간극을 절충시켜주는 중요한 개념이다. 섹션은 PE 파일 전체를 구성하는 파일/메모리 블록의 단위다. RVA(상대적 가상 주소 - Relative Virtual Address) PE 파일 내의 파일 오프셋과 RVA는 관점이 다르다! PE 구조에서 번지에 관계된 값, 즉 가상 주소 공간 상의 번지들은 전부 RVA 개념으로 표현된다. RVA는 이미지가 메모리에 로드되었을 떄, 더 정확히 표현하면 해당 프로세스의 가상 주소 공간 내에 로드되었을 때 그 시작 주소에 대한 상대적 번지를 가리키는 개념으로, 메모리에서 PE의 시작 주소에 대한 상대적인 오프셋 값으로 생각할 수 있다. 파일 상..

PE 파일

MS는 EXE와 DLL이 갖는 파일 구조를 PE 파일 포맷이라고 명명했다. 이때 PE는 "Portable Executable"의 약자로, 이 포맷으로 구성된 PE 파일들은 플랫폼에 관계 없이 윈도우 운영체제가 돌아가는 시스템이면 어디서든 (Portable) 실행 가능 (Executable)하다는 의미에서 PE라는 이름을 붙였다. WinNT.h 헤더 파일 내의 PE 관련 구조체들은 '파일'이라는 명칭 대신 '이미지(Image)'라는 명칭으로 표현된다. 파일이 아니고 왜 이미지일까? 이때 말하는 이미지는 JPEG나 BMP, GIF 등으로 알려진, 그림이나 사진과 같은 이미지를 의미하는 것이 아니라 Image라는 단어의 어원적 의미로 사용된다. 어떤 실체에 대한 그림자, 허상, 그것의 반영이라는 의미에서의 이..

반응형