
แกะรอยมัลแวร์: สิ่งที่ควรมองหาใน PE ไฟล์ ก่อนลงมือวิเคราะห์จริง
การวิเคราะห์มัลแวร์ต้องละเอียดรอบคอบและเป็นระบบ แม้หลายคนรีบเปิดไฟล์ในดีบักเกอร์ การทำความรู้จักไฟล์เบื้องต้นช่วยประหยัดเวลาและเห็นภาพรวมได้ชัดเจน
ทำไมต้องสแกนเบื้องต้นก่อน?
ก่อนดำดิ่งสู่โค้ด การเข้าใจภาพรวมของ PE (Portable Executable) ไฟล์ ฟอร์แมตโปรแกรมบน Windows เป็นสิ่งสำคัญ การตรวจสอบข้อมูลพื้นฐานเหล่านี้ช่วยระบุ “ลายเซ็น” หรือ “พฤติกรรม” เบื้องต้นของมัลแวร์ ทำให้การวิเคราะห์เชิงลึกมีทิศทางชัดเจน
ส่องโครงสร้าง PE ไฟล์: จุดเริ่มต้นของการไขรหัส
เมื่อได้รับไฟล์ที่น่าสงสัย การตรวจสอบข้อมูลพื้นฐานเหล่านี้คือสิ่งแรกที่ควรทำ
สถาปัตยกรรมและประเภท
พิจารณาว่าเป็น 32-bit หรือ 64-bit ซึ่งส่งผลต่อเครื่องมือวิเคราะห์ ถัดมาคือประเภท Subsystem ว่าเป็นโปรแกรมแบบ GUI มีหน้าต่าง หรือ Console ทำงานผ่านคำสั่ง สิ่งนี้บอกใบ้ถึงวัตถุประสงค์เบื้องต้นได้
ช่วงเวลาการคอมไพล์
Timestamp หรือเวลาที่ไฟล์ถูกคอมไพล์ ให้เบาะแสอายุของมัลแวร์ แม้ปลอมแปลงได้ง่าย แต่ก็ยังเป็นข้อมูลเริ่มต้นที่ช่วยเชื่อมโยงกับแคมเปญมัลแวร์ที่รู้จัก
จุดเริ่มต้นการทำงาน (Entry Point)
AddressOfEntryPoint คือตำแหน่งที่โค้ดจะเริ่มทำงาน เป็นจุดสำคัญสำหรับการเริ่มต้นดีบักและทำความเข้าใจการไหลของโปรแกรม
เจาะลึกส่วนสำคัญ: ค้นหาสัญญาณผิดปกติ
นอกเหนือจากข้อมูลพื้นฐาน โครงสร้างภายในของ PE ไฟล์ยังมีหลายส่วนที่เผยไต๋มัลแวร์ได้
ส่วนต่างๆ ของไฟล์ (Sections)
ไฟล์ PE แบ่งเป็นส่วนๆ เช่น .text (โค้ด), .data (ข้อมูล), .rsrc (ทรัพยากร) การตรวจสอบขนาดและคุณลักษณะต่างๆ ของส่วนเหล่านี้เป็นสิ่งจำเป็น หากส่วนโค้ดมี Entropy สูง อาจบ่งบอกว่าไฟล์มีการ แพ็ค (Packed) หรือ เข้ารหัส (Encrypted) ซึ่งเป็นเทคนิคที่มัลแวร์ใช้ซ่อนโค้ดจริง นอกจากนี้ ชื่อส่วนที่แปลกประหลาดหรือไม่เป็นมาตรฐานก็ควรต้องระวัง
ฟังก์ชันที่เรียกใช้ (Imports)
ส่วนนี้เผยว่าโปรแกรมเรียกใช้ฟังก์ชันอะไรจากไลบรารี DLL (Dynamic Link Library) เช่น kernel32.dll สำหรับจัดการไฟล์/โปรเซส, ws2_32.dll สำหรับเครือข่าย หรือ advapi32.dll สำหรับ Registry รายการฟังก์ชันเหล่านี้คือกุญแจสำคัญในการทำความเข้าใจ ความสามารถ ของมัลแวร์
ฟังก์ชันที่ส่งออก (Exports)
หากเป็นไฟล์ DLL การตรวจสอบฟังก์ชันที่ส่งออกเป็นเรื่องปกติ แต่ถ้าเป็นไฟล์ EXE ที่มีฟังก์ชันส่งออกมาก อาจบ่งชี้ถึง rootkit หรือเทคนิคพิเศษของมัลแวร์
ข้อมูลทรัพยากร (Resources)
ส่วนนี้อาจบรรจุข้อมูลหลากหลาย เช่น ไอคอน, สตริง, หรือแม้กระทั่งไฟล์ executable อื่น ข้อมูลในส่วนทรัพยากรอาจเป็น Payload หรือข้อมูลการตั้งค่าที่มัลแวร์ใช้
ข้อมูลเวอร์ชัน (Version Information)
แม้ถูกปลอมแปลงได้ แต่ข้อมูลเวอร์ชัน เช่น ชื่อผลิตภัณฑ์, บริษัทผู้ผลิต หรือหมายเลขเวอร์ชัน ก็ยังให้เบาะแสเกี่ยวกับที่มาหรือความพยายามอำพรางตัวของมัลแวร์
การเริ่มต้นวิเคราะห์ด้วยการสำรวจข้อมูลเหล่านี้อย่างละเอียดถี่ถ้วน สร้างแผนที่นำทางที่ดี ช่วยให้เข้าใจธรรมชาติของมัลแวร์ และเตรียมพร้อมสำหรับการเจาะลึกในขั้นตอนต่อไปได้อย่างมีประสิทธิภาพ การวิเคราะห์ที่รอบคอบตั้งแต่ต้น ถือเป็นหัวใจสำคัญของการปกป้องระบบจากภัยคุกคามไซเบอร์