<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.haidhi.my.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Struktur_file_PE</id>
	<title>Struktur file PE - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.haidhi.my.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Struktur_file_PE"/>
	<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;action=history"/>
	<updated>2026-11-01T21:45:52Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;diff=89&amp;oldid=prev</id>
		<title>SanzSkuy: /* Aplikasi Static Analysis PE File = */</title>
		<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;diff=89&amp;oldid=prev"/>
		<updated>2025-03-12T13:13:49Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Aplikasi Static Analysis PE File =&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:13, 12 March 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l139&quot;&gt;Line 139:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 139:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:Section-header.png|700px]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:Section-header.png|700px]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Aplikasi Static Analysis PE File &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/del&gt;=  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Aplikasi Static Analysis PE File =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* CFF Explorer: https://ntcore.com/explorer-suite/&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* CFF Explorer: https://ntcore.com/explorer-suite/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* PE Bear: https://github.com/hasherezade/pe-bear&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* PE Bear: https://github.com/hasherezade/pe-bear&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* pestudio: https://www.winitor.com/download&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* pestudio: https://www.winitor.com/download&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>SanzSkuy</name></author>
	</entry>
	<entry>
		<id>https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;diff=88&amp;oldid=prev</id>
		<title>SanzSkuy at 13:13, 12 March 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;diff=88&amp;oldid=prev"/>
		<updated>2025-03-12T13:13:36Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:13, 12 March 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l140&quot;&gt;Line 140:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 140:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Aplikasi Static Analysis PE File ==  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Aplikasi Static Analysis PE File ==  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/del&gt;https://ntcore.com/explorer-suite/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|CFF Explorer]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;CFF Explorer: &lt;/ins&gt;https://ntcore.com/explorer-suite/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/del&gt;https://github.com/hasherezade/pe-bear&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|PE Bear]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;PE Bear: &lt;/ins&gt;https://github.com/hasherezade/pe-bear&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/del&gt;https://www.winitor.com/download&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|pestudio]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pestudio: &lt;/ins&gt;https://www.winitor.com/download&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>SanzSkuy</name></author>
	</entry>
	<entry>
		<id>https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;diff=87&amp;oldid=prev</id>
		<title>SanzSkuy: Created page with &quot;Portable Execution (PE) adalah file executable yang digunakan dalam OS Windows (Kalo di Linux namanya ELF). Format ini menggantikan format MZ yang digunakan pada pendahulu Windows yaitu MS-DOS. PE memiliki struktur yang lebih fleksibel dan minim masalah. Menganalis PE file sangat krusial dalam malware analysis.  File:Pe-structure.png  &lt;span id=&quot;mz-header&quot;&gt;&lt;/span&gt; = MZ Header =  Pada era MS-DOS dan Windows masih berjalan berdampingan, kedua OS tersebut sama-sama memil...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Struktur_file_PE&amp;diff=87&amp;oldid=prev"/>
		<updated>2025-03-12T13:05:56Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Portable Execution (PE) adalah file executable yang digunakan dalam OS Windows (Kalo di Linux namanya ELF). Format ini menggantikan format MZ yang digunakan pada pendahulu Windows yaitu MS-DOS. PE memiliki struktur yang lebih fleksibel dan minim masalah. Menganalis PE file sangat krusial dalam malware analysis.  &lt;a href=&quot;/wiki/index.php/File:Pe-structure.png&quot; title=&quot;File:Pe-structure.png&quot;&gt;File:Pe-structure.png&lt;/a&gt;  &amp;lt;span id=&amp;quot;mz-header&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; = MZ Header =  Pada era MS-DOS dan Windows masih berjalan berdampingan, kedua OS tersebut sama-sama memil...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Portable Execution (PE) adalah file executable yang digunakan dalam OS Windows (Kalo di Linux namanya ELF). Format ini menggantikan format MZ yang digunakan pada pendahulu Windows yaitu MS-DOS. PE memiliki struktur yang lebih fleksibel dan minim masalah. Menganalis PE file sangat krusial dalam malware analysis.&lt;br /&gt;
&lt;br /&gt;
[[File:Pe-structure.png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;mz-header&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
= MZ Header =&lt;br /&gt;
&lt;br /&gt;
Pada era MS-DOS dan Windows masih berjalan berdampingan, kedua OS tersebut sama-sama memiliki file executable yang sama yaitu &amp;lt;code&amp;gt;.exe&amp;lt;/code&amp;gt;. Lalu ada masalah yang muncul ketika aplikasi Windows dijalankan di MS-DOS, hal ini disebabkan oleh format eksekusi windows yang lebih kompleks dibandingkan MS-DOS. Solusi dari masalah ini adalah dengan menambahkan MZ Header yang akan menampilkan pesan &amp;#039;&amp;#039;“This program cannot be run in DOS mode.”&amp;#039;&amp;#039; Jika program tersebut dieksekusi pada MS-DOS.&lt;br /&gt;
&lt;br /&gt;
[[File:Dos-message.png|700px]]&lt;br /&gt;
&lt;br /&gt;
MZ Header memiliki struktur utama yaitu:&lt;br /&gt;
&lt;br /&gt;
* Signature (MZ / 0x4D5A) → Menandakan bahwa file ini adalah file eksekusi DOS.&lt;br /&gt;
* Pointer ke PE Header → Menunjukkan lokasi bagian Portable Executable (PE) yang berisi kode utama aplikasi Windows. Pointer ini ditandai dengan field e_lfanew&lt;br /&gt;
* Kode kecil DOS → Bertanggung jawab untuk mencetak pesan peringatan saat dijalankan di lingkungan DOS.&lt;br /&gt;
&lt;br /&gt;
Jadi garis besar cara kerja MZ Header adalah:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: decimal;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Jika file &amp;lt;code&amp;gt;.exe&amp;lt;/code&amp;gt; dijalankan di lingkungan DOS, kode kecil dalam MZ Header akan dijalankan dan menampilkan pesan peringatan.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Jika file &amp;lt;code&amp;gt;.exe&amp;lt;/code&amp;gt; dijalankan di Windows, sistem akan membaca pointer ke PE Header (e_lfanew) dan langsung melompati bagian DOS, lalu mengeksekusi bagian PE yang berisi kode aplikasi Windows.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:Mz-header.png|700px]]&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;pe-header&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
= PE Header =&lt;br /&gt;
&lt;br /&gt;
Setelah MZ Header dalam file Portable Executable (PE), terdapat struktur penting yang disebut PE Header. PE Header berfungsi sebagai titik awal bagi sistem operasi Windows untuk memahami bagaimana mengeksekusi program.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;struktur-pe-header&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Struktur PE Header ==&lt;br /&gt;
&lt;br /&gt;
PE Header dimulai dengan dua huruf “PE” (dalam heksadesimal: &amp;lt;code&amp;gt;0x50 0x45&amp;lt;/code&amp;gt;), yang merupakan signature yang menandakan bahwa file ini menggunakan format PE.&lt;br /&gt;
&lt;br /&gt;
Setelah signature ini, PE Header terdiri dari dua bagian utama: File Header berisi informasi dasar tentang file PE, seperti:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;file-header&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== File Header ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Machine → Menunjukkan arsitektur prosesor yang dapat menjalankan file ini (misalnya, &amp;lt;code&amp;gt;0x8664&amp;lt;/code&amp;gt; untuk x86-64).&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Number of Sections → Jumlah section dalam file, seperti &amp;lt;code&amp;gt;.text&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;.data&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;.rdata&amp;lt;/code&amp;gt;, dll.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;TimeDateStamp → Waktu file dikompilasi.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Pointer to Symbol Table &amp;amp;amp; Number of Symbols → Untuk debugging dan informasi simbol (jarang digunakan dalam executable final).&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Size of Optional Header → Ukuran header opsional.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Characteristics → Properti file, misalnya apakah ini executable, DLL, dll.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;[[File:File-header.png|700px]]&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;optional-header&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Optional Header ===&lt;br /&gt;
&lt;br /&gt;
Meskipun disebut “Optional”, sebenarnya header ini wajib ada untuk file executable (kecuali untuk file object). Bagian ini berisi informasi yang dibutuhkan sistem operasi untuk memuat file PE ke dalam memori. Berikut bagian-bagian optional header yang cukup penting:&lt;br /&gt;
&lt;br /&gt;
* Magic → Menandakan apakah file ini untuk 32-bit (0x10B) atau 64-bit (0x20B)&lt;br /&gt;
* AddressOfEntryPoint*→ Alamat awal eksekusi program setelah dimuat ke memori.&lt;br /&gt;
* ImageBase → Alamat virtual dasar tempat file PE akan dimuat di memori.&lt;br /&gt;
* SectionAlignment &amp;amp;amp; FileAlignment → Menentukan cara penyelarasan (alignment) data dalam memori dan dalam file.&lt;br /&gt;
* SizeOfImage &amp;amp;amp; SizeOfHeaders → Ukuran total dari file ketika dimuat di memori.&lt;br /&gt;
* Subsystem → Menunjukkan apakah file ini adalah GUI, console, atau driver mode.&lt;br /&gt;
* DLL Characteristics → Berisi flag seperti DEP/NX compatibility, ASLR support, dll.&lt;br /&gt;
* subsystem →menunjukan jenis aplikasi yang dieksekusi. Contoh: menunjukan apakah itu aplikasi CLI, UI, atau POSIX (?)&lt;br /&gt;
&lt;br /&gt;
[[File:Optional-header.png|700px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;data-directory&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
=== Data Directory ===&lt;br /&gt;
&lt;br /&gt;
adalah sebuah array yang menunjuk ke berbagai tabel atau header tambahan yang mungkin ada dalam file executable. Data Directory tidak selalu digunakan dalam setiap aplikasi, tetapi jika ada, ia akan menyimpan informasi penting mengenai bagaimana executable harus berinteraksi dengan sistem operasi.&lt;br /&gt;
&lt;br /&gt;
Dua komponen utama Data Directory&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field&lt;br /&gt;
! Keterangan&lt;br /&gt;
|-&lt;br /&gt;
| Address&lt;br /&gt;
| Pointer yang menunjuk ke awal header dalam memori&lt;br /&gt;
|-&lt;br /&gt;
| Size&lt;br /&gt;
| Ukuran dari header atau tabel yang ditunjuk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Tidak semua entri dalam Data Directory relevan untuk analisis malware atau exploit development, tetapi berikut adalah beberapa yang paling sering digunakan:&lt;br /&gt;
&lt;br /&gt;
# Import Table&lt;br /&gt;
#* Menunjukkan daftar fungsi atau API yang digunakan oleh program, tetapi berasal dari file lain (seperti DLL – &amp;#039;&amp;#039;Dynamic Link Library&amp;#039;&amp;#039; ).&lt;br /&gt;
#* Contoh: Jika sebuah aplikasi memanggil &amp;lt;code&amp;gt;MessageBoxA()&amp;lt;/code&amp;gt; dari &amp;lt;code&amp;gt;user32.dll&amp;lt;/code&amp;gt;, maka &amp;#039;&amp;#039;&amp;#039;Import Table&amp;#039;&amp;#039;&amp;#039; akan memiliki referensi ke fungsi tersebut.&lt;br /&gt;
#* Penting untuk malware analysis karena bisa menunjukkan fungsi API mana yang digunakan oleh malware untuk melakukan aksinya (seperti &amp;lt;code&amp;gt;WinExec&amp;lt;/code&amp;gt; atau &amp;lt;code&amp;gt;LoadLibrary&amp;lt;/code&amp;gt;).&lt;br /&gt;
# Export Table&lt;br /&gt;
#* Berisi daftar fungsi yang tersedia untuk dipakai oleh executable lain.&lt;br /&gt;
#* Contoh: &amp;lt;code&amp;gt;kernel32.dll&amp;lt;/code&amp;gt; mengekspor banyak fungsi seperti &amp;lt;code&amp;gt;CreateFileA&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ReadFile&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;WriteFile&amp;lt;/code&amp;gt;, dll.&lt;br /&gt;
#* &amp;#039;&amp;#039;&amp;#039;Penting untuk exploit development&amp;#039;&amp;#039;&amp;#039; , karena jika sebuah DLL memiliki fungsi yang bisa dieksploitasi (misalnya buffer overflow), kita bisa menyalahgunakannya.&lt;br /&gt;
# Resource Table&lt;br /&gt;
#* Berisi informasi tentang sumber daya (resource) yang disertakan dalam executable, seperti ikon, gambar, string, dialog box, atau file lainnya .&lt;br /&gt;
#* Penting dalam malware analysis , karena beberapa malware menyembunyikan kode berbahaya dalam resource section dan mengekstraknya saat runtime.&lt;br /&gt;
# Relocation Table&lt;br /&gt;
#* Digunakan jika executable tidak bisa dimuat pada alamat memori yang diharapkan , sehingga alamat dalam kode harus disesuaikan (relokasi).&lt;br /&gt;
#* Penting dalam exploit development , karena ASLR ( &amp;#039;&amp;#039;Address Space Layout Randomization&amp;#039;&amp;#039; ) sering memanfaatkan relocation untuk mencegah eksploitasi.&lt;br /&gt;
# TLS (Thread Local Storage) Table&lt;br /&gt;
#* Digunakan untuk menjalankan kode sebelum &amp;lt;code&amp;gt;main()&amp;lt;/code&amp;gt; dipanggil .&lt;br /&gt;
#* Bisa digunakan untuk bypass debugger dengan mengeksekusi kode sebelum debugger mengambil kontrol atas program.&lt;br /&gt;
#* Malware sering menggunakan TLS callbacks untuk menyembunyikan eksekusi awalnya dari debugger.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;section-table&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
= Section Table =&lt;br /&gt;
&lt;br /&gt;
Section Table berisi daftar section dalam executable. Setiap section memiliki fungsi spesifik, seperti menyimpan kode program, data statis, atau informasi lainnya.Jumlah section dalam Section Table ditentukan oleh nilai dalam field &amp;lt;code&amp;gt;NumberOfSections&amp;lt;/code&amp;gt; yang ada di FileHeader.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;struktur-section-table&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== Struktur Section Table ==&lt;br /&gt;
&lt;br /&gt;
Setiap section header memiliki beberapa field penting:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! &amp;#039;&amp;#039;&amp;#039;Field&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
! &amp;#039;&amp;#039;&amp;#039;Keterangan&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| Name&lt;br /&gt;
| Nama section (maksimal 8 byte, sering dalam format string).&lt;br /&gt;
|-&lt;br /&gt;
| VirtualAddress&lt;br /&gt;
| Alamat awal section dalam memori (dalam bentuk RVA –&amp;#039;&amp;#039;Relative Virtual Address&amp;#039;&amp;#039; ).&lt;br /&gt;
|-&lt;br /&gt;
| VirtualSize&lt;br /&gt;
| Ukuran section dalam memori (bisa lebih besar dari ukuran aslinya di disk karena padding).&lt;br /&gt;
|-&lt;br /&gt;
| SizeOfRawData&lt;br /&gt;
| Ukuran section di hard disk (bisa lebih kecil dari ukuran di memori).&lt;br /&gt;
|-&lt;br /&gt;
| PointerToRawData&lt;br /&gt;
| Offset awal section di dalam file PE di hard disk.&lt;br /&gt;
|-&lt;br /&gt;
| Characteristics&lt;br /&gt;
| Flags yang menunjukkan izin akses (EXECUTE, READ, WRITE).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File:Section-header.png|700px]]&lt;br /&gt;
&lt;br /&gt;
= Aplikasi Static Analysis PE File == &lt;br /&gt;
* [[https://ntcore.com/explorer-suite/|CFF Explorer]]&lt;br /&gt;
* [[https://github.com/hasherezade/pe-bear|PE Bear]]&lt;br /&gt;
* [[https://www.winitor.com/download|pestudio]]&lt;/div&gt;</summary>
		<author><name>SanzSkuy</name></author>
	</entry>
</feed>