الـ Malware Writers/Authors بيستعملو طٌرق إخفاء بالـPacking والـObfuscation بحيث يصعبو عملية الـ Malware Analysis ودا يودينا لسؤال:
الـ Packers بتشتغل إزاي؟
1-بتاخد الـ Original File وتضغطه وتحط معاه Wrapper Program او Unpacking Stub (Unpacker).
2-بتغير الـ Entry Point الأصلية (اللي البرنامج هيبدأ يشتغل من عندها) وتخليها تبدأ من الـ Wrapper اللي حطته قبل كدة وبعدين تحفظ الـ Packed File على الـ Disk عادي.
حجم الـ Packed بيكون أصغر من الـ Original، والـ strings الموجودة فيه بتكون قليلة جدا أو معدومة، وعدد الـ imports والـ Functions الظاهرة فيه بتكون أقل، دا غير الاختلاف في الRaw & virtual size وعناوينهم..الخ
إزاي الـ Malware بيشتغل وهو مضغوط أو مشفّر؟
بيحصله Unpacking في الـ Memory بعد تشغيله (ودا هيبقى ضيّع علينا فرصة الـ Static Analysis بعد مااشتغل)
فيه Tools بتعرّفنا هل الملف أو المالوير Packed او لأ، وبتعرفنا نوع الـ Packer المُستخدم وبعضها بيدينا Hint لاسم الاداة او البرنامج اللي نقدر نستخدمهم في الـ Unpacking، الأدوات دي زي:
PEiD
Exeinfo PE
PE bear
Detect It Easy (DIE)
إزاي نعمل Unpacking لـ Packed Malware ؟
-لو الـ Malware معموله Packing بـ Packer معروف نقدر نستخدم الـ Automatic Unpacker المناسب زي:
UPX - Exe Packer - Themida - FSG - ASPack
-لو معمول بـ Packer مش معروف أو حديث ممكن وقتها نجرب الـ Automatic Unpackers اللي هتفكلنا جزء بس من الـ Malware بالتالي ممكن ميشتغلش بس نقدر نعرف منه بعض المعلومات زي الـ imports والـ strings...
وفي النهاية هنلجأ للـ Manual Unpacking واللي هيتم بطرق تانية باستعمال الـ Debuggers وغيرها..