Tabel Section
Secara
umum Tabel Section dapat dianalogikan sebagai "daftar" untuk tiap
section yang ada di file PE. Tabel ini mencakup informasi tentang
section-section file PE. berikut contoh layout dari tabel section file PE yang
sudah di dump :
- text VirtSize: 00005AFA VirtAddr: 00001000
raw data offs: 00000400 raw
data size: 00005C00
relocation
offs: 00000000 relocations: 00000000
line
# offs: 00009220 line #'s: 0000020C
characteristics:
60000020
CODE MEM_EXECUTE
MEM_READ
- bss VirtSize: 00001438 VirtAddr: 00007000
raw data offs: 00000000
raw data size: 00001600
relocation
offs: 00000000
relocations: 00000000
line
# offs: 00000000 line
#'s: 00000000
characteristics: C0000080
UNINITIALIZED_DATA MEM_READ
MEM_WRITE
- rdata VirtSize: 0000015C VirtAddr : 00009000
raw data offs: 00006000 raw data size: 00000200
relocation
offs: 00000000 relocations:
00000000
line
# offs: 00000000 line
#'s: 00000000
characteristics: 40000040
INITIALIZED_DATA MEM_READ
- data VirtSize: 0000239C VirtAddr: 0000A000
raw
data offs: 00006200 raw data
size: 00002400
relocation offs: 00000000
relocations: 00000000
line
# offs: 00000000 line
#'s: 00000000
characteristics:
C0000040
INITIALIZED_DATA MEM_READ
MEM_WRITE
5. data VirtSize: 0000033E VirtAddr:
0000D000
raw data offs: 00008600 raw data size: 00000400
relocation
offs: 00000000 relocations:
00000000
line
# offs: 00000000 line
#'s: 00000000
characteristics:
C0000040
INITIALIZED_DATA MEM_READ
MEM_WRITE
6. reloc VirtSize:
000006CE VirtAddr: 0000E000
raw
data offs: 00008A00 raw data
size: 00000800
relocation
offs: 00000000 relocations:
00000000
line
# offs: 00000000 line
#'s: 00000000
characteristics:
42000040
INITIALIZED_DATA MEM_DISCARDABLE MEM_READ
Layout
diatas adalah format dari IMAGE_SECTION_HEADER, Berikut keterangan tentang IMAGE_SECTION_HEADER :
- BYTE Name[IMAGE_SIZEOF_SHORT_NAME] //Nama section,biasanya
- diawali dengan tanda titik/dot union { //Nilai sesungguhnya dari ukuran kode atau data DWORD PhysicalAddress DWORD VirtualSize } Misc;\
- DWORD VirtualAddress //Alamat RVA untuk keperluan mapping oleh loader
- DWORD SizeOfRawData //Ukuran dari section setelah dibulatkan ke ukuran file alignment
- DWORD PointerToRawData //Offset dari section
- DWORD PointerToRelocations //Offset untuk informasi relokasi section
- DWORD PointerToLinenumbers //Offset untuk nomor baris (line number)
- WORD NumberOfRelocations //Jumlah dari relokasi yang ada di tabel relokasi
- WORD NumberOfLinenumbers //Jumlah dari nomor baris yang ada di tabel nomor baris
- DWORD Characteristics //Berisi angka tertentu yang menunjukkan atribut dari suatu section (data, kode, dll)
untuk melihat halaman selanjutnya klik disini