Chapter 7. PE Header II - RVA to RAW
1. RVA to RAW(Relative Virtual Address to RAW File Offset)
- RVA to RAW
· Section에서 Memory 주소(RVA)와 File의 Offset(RAW)을 Mapping하는 것
· PE Header를 이용해 Packing과 같은 작업을 진행할 때 내용을 수정 후 RVA와 같은 값이 바뀌면 Mapping을 시켜줘야 한다.
· RVA to RAW를 하는 방법
◦ RVA가 속한 Section 탐색
◦ 'IMAGE_SECTION_HEADER' 구조체에 의한 비례식을 사용해 File Offset(RAW) 계산
◦ 비례식
- RVA to RAW 비례식을 이용한 Mapping의 예
· '계산기' Program에서 RVA = 5000, File Offset = ?
◦ RVA(5000) - VA(1000) + PointerToRawData(400) = RAW(4400)
◦ 확인
'Reversing > Theory' 카테고리의 다른 글
Chapter 9. 실행 압축(Run-Time Packer) I (0) | 2015.08.16 |
---|---|
Chapter 8. PE Header III - IAT & EAT (0) | 2015.08.16 |
Chapter 6. PE header I - PE Format (0) | 2015.08.16 |
Chapter 5. Calling Convention (0) | 2015.08.16 |
Chapter 4. Stack (0) | 2015.08.16 |