مقوله PE Header مخفف Portable Executable Header است. این بخش در ابتدای فایلهای اجرایی ویندوز (مثل .exe یا .dll) قرار دارد و ساختار و اطلاعات مورد نیاز سیستمعامل برای اجرای برنامه را مشخص میکند.
به زبان ساده، هدر PE شناسنامه و نقشه راه یک فایل اجرایی است.
🧩 اجزای اصلی هدر PE هدر PE از چند بخش تشکیل میشود: مقولهDOS Headerاولین بخش فایل که برای سازگاری با سیستمهای قدیمی MS-DOS هنوز وجود دارد. وPE Signatureیک رشته ثابت (PE\0\0) که شروع ساختار اصلی را مشخص میکند. وFile Headerشامل اطلاعات کلی مثل: نوع پردازنده هدف (x86، x64) تعداد بخشها (Sections) زمان کامپایل وOptional Header (در واقع الزامی برای ویندوز)این قسمت آدرسهای مهم مثل Entry Point (شروع اجرای برنامه)، سایز حافظه، و تنظیمات dynamic linking را نگه میدارد. وSection Headersتوضیح و مشخصات بخشهای مختلف فایل (کد، داده، منابع و…)
⚡ چرا هدر PE مهم است؟
اجرای برنامه ویندوز بدون خواندن و تفسیر هدر PE نمیتواند بداند کجا شروع به اجرای کد کند یا چطور حافظه تخصیص دهد.
بحث Reverse Engineering و تحلیل بدافزار محققان امنیتی با بررسی هدر PE میتوانند بفهمند: آیا فایل آلوده شده یا دستکاری شده؟ آیاEntry Point تغییر یافته؟ نامگذاری یا ترتیب بخشها غیرمعمول است؟
شناسایی Evasion Techniques مهاجمان گاهی از Manipulation of PE Header Metadata استفاده میکنند تا سیستمهای EDR/AV را فریب دهند. مثلاً: تغییر Timestamp برای مخفی کردن زمان واقعی کامپایل. اضافه کردن یا جابجایی بخشها برای پنهان کردن کد مخرب. تغییر آدرسهای Import Table برای دور زدن تابعهای امنیتی. دیباگ و توسعه نرمافزار برنامهنویسها و تیمهای Build بدون PE Header نمیتوانند فایل اجرایی بسازند که توسط سیستم عامل شناخته شود.
🎯جمعبندی: هدر PE قلب فایل اجرایی ویندوز است؛ هر تغییری در آن میتواند باعث اجرا نشدن، رفتار غیرمنتظره یا حتی پنهان شدن بدافزار شود. برای یک متخصص امنیت، شناخت هدر PE همانند شناخت DNA برای یک پزشک است.