مقال : تحليل ملفات PDF الضارة
أصبحت ملفاتPDF شائعة جداً في الاستخدامات اليومية اذ اصبح من الصعب أن نتخيل العروض التجارية بدون ملفات PDF , يتم استخدام ملفات PDF في معظم الشركات تقريبا وذلك لتبادل الصفقات التجارية و نشرات الشركة وحتى في الدعوات.
كانت السنوات السابقة غير جيدة بالنسبة لمستخدميPDF حيث انتشرت العديد من الثغرات التي شكلت نقطة ضعف أهمها ثغرات buffer overflow في الإصدارات التي سبقت الإصدار 9 . كما لوحظ وجود الكثير من الهجمات في محاولة لإساءة استخدام هذه الثغرات باستخدام الهندسة الاجتماعية أو من خلال استضافة ملفات PDF الخبيثة على الأنترنت. اذ وبمجرد فتح ملف PDF من الممكن استغلال نقاط الضعف وتحميل الشيفرات الخبيثة تلقائياً من على شبكة الانترنت، ليتم بعد ذلك عرضها على هيئة ملفPDF مما يجعلك تقع في الشرك وتعتقد بأن لا شيء خاطئ قد حدث.
في كثير من الأحيان يتم استخدام ملفات PDF الخبيثة كجزء من هجمات الكمبيوتر المستهدفة على نطاق واسع. لذلك انه من الجيد معرفة كيفية تحليل ملفات PDF ولكن أولاً فأن المحللين بحاجة إلى فهم ال PDF بشكل جيد قبل تصنيفها كخبيثة. وهذه هي المعلومات التي يجب معرفتها :
تركيبة ملفات PDF:
ان ملفات PDF تمتلك القدرة على تقديم محتويات قيمة (ثابتة ومتحركة ) كما و يمكنها تقديم وثائق جذابة وتفاعلية ومتنقلة. بالرغم من فوائد ميزة – مشاركة أماكن المعلومات الا انه يوجد جانب مظلم على حد سواء, اذا ان مميزات ملفات PDF المذكورة أعلاه يمكن استخدامها لإيواء المحتويات الضارة، وهذا ما حصل فعلياً في السنوات السابقة حيث قام مجرمو الإنترنت بتضمين برامج خبيثة وذلك لتثبيت البرامج الضارة وسرقة أوراق المستخدم الاعتمادية. عادةً يكون سلوك برامج ملفات PDF الخبيثة في برامج مضمنة في ملفات PDF، البرامج المسؤولة عن السلوكات الضارة يمكن أن تكون مكتوبة بلغة البرمجة التي يدعمها ملف PDF ولغة Javascript هي الأكثر شيوعاً لهذا الغرض . في معظم الحالات تكون البرمجيات المضمنة هي المسؤولة عن الخلل الوظيفي ، وبدونها سيكون هناك حاجة لتثبيت البرامج الضارة على نظام التشغيل الخاص بالضحية
بنية وثائق ال PDF:
يتكون البناء العام لملف PDF من المكونات البرمجية التالية:
- قيم منطقية،وهو مايمثل (الخطأ والصواب)
- أرقام
- سلاسل
- أسماء
- مصفوفات، أشياء منظمة في مجموعات
- قواميس، مجموعات من الأشياء المفهرسة حسب الأسماء
- التدفقات،عادة ما تحتوي على كم هائل من البيانات
- null objects
حقن البرامج الضارة مع PDF:
عند بدء عملية التشغيل فإننا نقوم اما بتشغيل تطبيق أو فتح وطباعة مستند. يمكننا استخدام واحد من العديد من برامج Adobe Acrobat واستغلالها في مشروع ال Metasploit وذلك من أجل تضمين برنامج تنفيذي مع ال PDF .
سيتم تشغيل( موجه الاوامر) باستخدام الكود اعلاه
ويمكننا حقن البرمجيات الخبيثة في ملفات PDF الخاصة بنا باستخدام لغة البرمجة JavaScript والتي تقوم بعملية تفقد وتعديل المحتوى , عندما نقوم بفتح أي ملف من ملفات PDF الخبيثة، فإنه سيتم تنفيذ العملية التي تقوم بها ال JavaScript . بعد ذلك، تتم معالجة الشيل ثم يُفعل برنامج حصان طروادة من الإنترنت..
إنشاء ملف PDF ضار بأستخدام Metasploit:
سوف نقوم بإستخدام برنامج Adobe Reader ودالة ()util.printf في JavaScript وذلك لإنشاء ملفات PDF الخبيثة عن طريق ثغرة buffer overflow .برنامج Adobe Reader مصاب بثغرات buffer overflow كثيره .
خطوات إنشاء ملفات PDF الخبيثة هي كما يلي:
قم بفتح msfconsole ونفذ الأوامر التالية :
بعد الانتهاء من ضبط كل الخيارات كما نريد نقوم بإنشاء الملف الخبيث الخاص بنا .
نلاحظ أن ملفات PDF الخاصة بنا قد تم إنشاؤها . يمكنك الوصول إلى ملفات “PDF” عن طريق الدخول الى المسار الذي تم انشائها فيه وإذا لم تكن الملفات مرئية، اضغط زرا CTRL و H معا للبحث عن الملفات والمجلدات المخفية
قبل ارسال الملف الى الهدف , يجب علينا اعداد المتنصت لأستقبال الاتصال العكسي
سرعان ما يقوم الضحية بفتح ملف خبيث، وطالما تم فتح جلسة مع الضحية، يمكننا الوصول إلى نظامه باستخدام الmeterpreter
تحليل ملف PDF الضارة:
ان تحليل ملف PDF يتضمن التحقيق، فك التشفير، واستخراج محتويات المكونات المشبوهة في ملفات ال PDF والتي يمكن أن تستخدم لاستغلال ثغرة في برنامج Adobe Reader لتنفيذ أعمال ضارة. هناك عدد متزايد من الأدوات التي تم تصميمها للمساعدة في هذه العملية. بشكل اساسي إن تحليل ملفات PDF يمكن أن يتم بطريقتين: اما بالاتصال بشبكة الإنترنت او بدون الاتصال بشبكة الإنترنت .
تحليل ال PDF على الانترنت:
في كل مرة تشعر بوجود ملف مشبوه أو في حال تلقيت ملف من مصدر غير موثوق، من المستحسن أن تقوم بفحصه عن طريق الخدمات الموجودة على شبكة الإنترنت قبل فتحه. تحليل PDF على الأنترنت يجعل عملنا أسهل. كل ما علينا القيام به هو تقديم ملفات PDF الخبيثة فقط و بعدها سيقوم محلل الإنترنت بفحص ملفات PDF التي تم رفعها من ثغرات معروفه .
خدمة Wepawet:
هو عبارة عن خدمة لكشف وتحليل البرامج الضارة على شبكة الإنترنت. وهو معني حالياً بال flash و الJavaScript ، بالإضافة الى ملفات PDF .
لاستخدام Wepawet قم بزيارة الموقع التالي: http: //wepawet.iseclab.org
ثم قم بتحميل عينة أو تحديد عنوان URL وسيتم تحليل الموارد و إنشاء تقرير
PDF Examiner:
يتم فحص ملفاتPDF من قبل متعقب البرامج الضارة وهو قادر على القيام بمسح لملفات PDF التي تم تحميلها لعدة اسباب اهمها أنها تسمح للمستخدم استكشاف بنية الملف، تماماً مثل عملية الاختبار ، وفك التشفير ، بالإضافة إلى التخلص من محتويات ملفات PDF . هذه الأداة تفسح المجال بشكل جيد لمهام تحليل PDF اليدوية.
اذهب الى الموقع التالي www.malwaretracker.com. اضغط على علامة التبويب + فاحص ملفات PDF في تبويب المسح الضوئي وحدد ملفات ال PDF ليتم مسحها.
Jsunpack:
وهو مصمم للقيام بعملية الاختبار التلقائي و تحويل ال JavaScript الى صيغ اسهل. تتضمن مميزاته أيضاً تشكيلا لمحتويات لاقط ملفات حزم الشبكة (PCAP) وتحديد جوانب استخدامات العميل المشتركة. ويمكن أيضا فحص ملفات PDF للبحث عن اثار ال JavaScript الخبيثة .
قم بزيارة الموقع التالي:jsunpack.jeek.org
تحليل ملفات PDF بدون الاتصال بالشبكة :
اذا كنا نريد فحص ملفات PDF يدويا، فهذه هي الأدوات التي سوف نستخدامها.
PDF Stream Dumper:
بعد تثبيت PDF Stream Dumper ،قم بتحميل ملفات PDF المشبوهة وانظر حولها. سوف ترى ألوان مختلفة على الجانب الأيمن، حيث يظهر اللون الأحمر بالأعلى مع اشارة الى ال JavaScript
تتضمن الأداة عدد من توقيعات ملفات ال PDF المستخدمة و المعروفة.
للقيام بعملية مسح لملف، اختر “Exploits Scan ” عن طريق الضغط على القائمة، فتقوم ملفات PDF الخبيثة بإظهار أن محتواها يحتوي على استغلال لثغرة CVE- 2008-2992
قد اصبحنا الآن على يقين تام من اننا نتعامل مع ملفات PDF الخبيثة التي تستغل ضعف ثغرة CVE 2008-2992 في برنامج Acrobat Reader وذلك لاستخراج وتشغيل برامج خبيثة قابلة للتنفيذ والتي تم تضمينها في ملفات PDF
يمكننا الحصول على مزيد من المعلومات حول الاستغلال عن طريق زيارة cvedetails.com وإدخال الرقم CVE الخاص بالإستغلال
Peepdf:
هو عبارة عن أداة لاستكشاف ملفات PDF ومعرفة ما إذا كانت الملفات ضارة أم لا, والهدف من هذه الأداة هو توفير جميع المكونات الضرورية التي قد يحتاجها الباحث الأمني في تحليل ال PDF دون استخدام ثلاث أو أربع أدوات لأداء جميع المهام.
هنا maliciouspdf.pdf هو ملف ال PDF المراد تحليله
إذا كان هناك بعض الأشياء مع رمز ال JavaScript في محتوى ال PDF، نستطيع استخدام أوامر ال JavaScript لتحليلها. يمكننا أن نرى بوضوح من الصورة أعلاه أن الشيء الذي يحمل رقم 5 هو JavaScript ،والتي تتطلب PyV8
بعد تحليل شفرة JavaScript الخاصة بالعنصر، يمكننا الحصول على عنوان exe URL المرتبط بملفات ال PDF
Origami:
وهو عبارة عن نظام صمم بهدف تحليل وصياغة وثائق PDF. ويمكن استخدامه ليطبق على ملفات PDF المتلاشية ، أو بحقن شيفرة (خبيثة) في وثائق موجودة مسبقاً
Pdfid:
هو عبارة عن الأداة التي يمكن من خلالها استخلاص معلومات مفيدة من ملفات PDF. وعلى وجه التحديد يقوم الpdfid باستخلاص المعلومات الأساسية من برامج PDF مثل:
JavaScript، obj ،endobj بالإضافة الى stream وغيرها من المعلومات.. بعض ثغرات ال PDF تظهر على هذه المعلومات، لذلك فإن pdfid من الممكن احيانا أن يظهر للمستخدم بالضبط ما يجري داخل ال PDF
بعض الإجراءات الوقائية التي يجب القيام بها:
• تمكين التحديثات التلقائية.
• ايقاف الدمج في متصفح PDF.
• دائماً قم بتثبيت أحدث النسخ والاصدارات ، حتى بالنسبة للاصدارات القديمة من منتجات برامج Adobe .
• قم بالغاء تفعيل ال JavaScript .
• قم بإلغاء تحديد “السماح لغير مرفقات ملفات PDF من التطبيقات الخارجية” وذلك تجنباً لحدوث خلل في البرامج
• استخدم بدائل لبرمجيات PDF مثل: Foxit, Sumatra, PDF XChange
الخلاصة :
تم العثور على العديد من الثغرات في السنوات السابقة، والتي لا تزال تتزايد يوما بعد يوم، لذلك فانه من المهم القيام بتحليل أي برنامج PDF قبل فتحه لأنه وبمجرد فتح ملف PDF يمكن استغلال اي ثغرة تلقائيا مما يؤدي إلى تحميل الشيفرات الخبيثة من الإنترنت. يمكننا تحليل أي ملف PDF عن طريق الإتصال بشبكة الإنترنت او يدوياً بدون الاتصال بشبكة الإنترنت . ولحماية اعلى علينا استخدام قارئ PDF البديل ودائما يجب تثبيت اخر التحديثات أو الإصدارات من قارئ ملفات PDF.
ترجمة لمقال : Analyzing Malicious PDFs لصاحبها Rohit Shaw.
بارك الله فيك