728x90
반응형
섹션 추가하려는 것 자체가 PE에 대해 어느정도 알고 있다는 것이기 때문에
각 멤버들이 의미하는 것들에 대한 설명은 생략.
Section Alignment
File Alignment
우선 모든 기준이 되는 위의 두 가지.
Virtual Size, RVA, Size of Raw Data, Pointer to Raw Data, Size of Image
그리고 윗 것들 모두 Alignment의 배수가 되어야 함.
Section Alignment : Virtual Size, RVA, Size of Image
File Alignment : Size of Raw Data, Pointer to Raw Data
ImageNTHeader.OptionalHeader.SizeOfImage =
ImageSectionHeaders[num + NumAddSections - 1].VirtualAddress
+ ImageSectionHeaders[num + NumAddSections - 1].Misc.VirtualSize;
file size
마지막으로 섹션을 추가해줬으니 그만큼 파일의 크기도 늘려주어야 함.
Size of Raw Data, Pointer to Raw Data를 고려하여 적절히 늘려주자.
PE 구조에 file size라는 멤버가 있다는 의미가 아니고, 추가된 섹션만큼 NULL 값이라도 채워야 한다는 의미이다.
728x90
반응형
'리버싱 > 기타' 카테고리의 다른 글
IL 코드 보기 (0) | 2017.01.15 |
---|---|
arm, powerpc, mips Cross Compile, Execute and Remote Debugging (0) | 2016.10.23 |
Code Injection from BlackEnergy (0) | 2016.10.12 |
프로세스 시작과 동시에 디버거 붙이기 (0) | 2016.09.25 |
Anti Debugging using NtSetInformationThread (0) | 2016.07.23 |
Anti Debugging using CheckRemoteDebuggerPresent (0) | 2016.07.20 |
Anti Debugging using RDTSC (0) | 2016.07.20 |
z3 manual (1) | 2016.07.06 |
Linux remote debugging using IDA pro (0) | 2016.06.06 |
Back to User (0) | 2014.11.16 |
댓글