مغامرات مالفاري المراوغ ، الجزء الأول

مغامرات مالفاري المراوغ ، الجزء الأول

مع هذه المقالة ، نبدأ سلسلة من المنشورات حول البرامج الضارة المراوغة. برامج القرصنة التي لا تترك أي أثر للهجوم ، والمعروفة أيضًا باسم بلا ملف ("غير مألوف" ، غير مرئي ، بدون ملفات) ، عادةً ما تستخدم PowerShell على أنظمة Windows لتنفيذ الأوامر سرًا للبحث عن محتوى قيم واستخراجه. يعد اكتشاف نشاط المتسلل بدون ملفات ضارة مهمة صعبة. تعمل مضادات الفيروسات والعديد من أنظمة الكشف الأخرى على أساس تحليل التوقيع. لكن الخبر السار هو أن مثل هذه البرامج موجودة بالفعل. على سبيل المثال، أنظمة UBA، قادر على اكتشاف النشاط الضار في أنظمة الملفات.

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

بوويرشيل العظيم والرهيب

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

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

في حالة PowerShell ونماذج البرامج النصية الأخرى (Visual Basic و JavaScript وما إلى ذلك) ، تمكنت من رؤية الكود نفسه. على سبيل المثال ، صادفت مثال PowerShell هذا:

مغامرات مالفاري المراوغ ، الجزء الأول

يمكنك أيضًا تشغيل PowerShell بتشفير base64 لتجنب الاكتشاف. لاحظ استخدام الخيارين غير التفاعلي والمخفي.

إذا كنت قد قرأت منشورات التشويش الخاصة بي ، فأنت تعلم أن الخيار -e يشير إلى أن المحتوى بترميز base64. بالمناسبة ، يساعد التحليل الهجين أيضًا في فك تشفير كل شيء. إذا كنت تريد محاولة فك تشفير base64 PowerShell (المشار إليه فيما بعد - PS) بنفسك ، فأنت بحاجة إلى تشغيل هذا الأمر:

 [System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($EncodedText))

الخوض أعمق

لقد قمت بفك تشفير برنامج PS الخاص بنا باستخدام هذه الطريقة ، فيما يلي نص البرنامج ، على الرغم من تعديله قليلاً من قبلي:

مغامرات مالفاري المراوغ ، الجزء الأول

لاحظ أنه تم تعيين النص البرمجي على 4 سبتمبر 2017 وتم تمرير ملفات تعريف الارتباط للجلسة.

لقد كتبت عن هذا النمط من الهجوم في سلسلة التشويش PS، حيث يتم تحميل البرنامج النصي بترميز base64 نفسه مفتقد برامج ضارة من موقع آخر ، باستخدام كائن WebClient من مكتبة .Net Framework للقيام بكل العمل الشاق.

ما هو؟

بالنسبة لبرامج الأمان التي تفحص Windows أو سجلات أحداث جدار الحماية ، يمنع ترميز base64 اكتشاف سلسلة نمط النص العادي "WebClient" للحماية من طلب الويب هذا. وبما أنه يتم بعد ذلك تنزيل جميع البرامج الضارة "الشريرة" وتمريرها إلى PowerShell الخاص بنا ، فإن هذا الأسلوب يتيح لنا بالتالي تجنب الاكتشاف تمامًا. في الواقع ، هذا ما اعتقدته في البداية.

اتضح أنه مع تمكين التسجيل المتقدم لـ Windows PowerShell (راجع مقالتي) ، ستتمكن من رؤية السلسلة المحملة في سجل الأحداث. أنا مثل آخر ) أعتقد أنه يجب على Microsoft تمكين هذا المستوى من التسجيل افتراضيًا. لذلك ، مع تمكين التسجيل الموسع ، سنرى في سجل أحداث Windows طلب التنزيل المكتمل من البرنامج النصي PS وفقًا للمثال الذي قمنا بتحليله أعلاه. لذلك ، من المنطقي تفعيلها ، توافق؟

إضافة المزيد من البرامج النصية

يخفي المتسللون بذكاء هجوم PowerShell في وحدات ماكرو Microsoft Office المكتوبة بلغة Visual Basic ولغات البرمجة النصية الأخرى. الفكرة هي أن الضحية يتلقى رسالة ، على سبيل المثال ، من خدمة التوصيل ، مع تقرير مرفق بتنسيق doc. تفتح هذا المستند ، الذي يحتوي على الماكرو ، وينتهي الأمر بتشغيل PowerShell الضار نفسه.

غالبًا ما يتم إخفاء نصوص Visual Basic نفسها بحيث تتجنب بحرية الفيروسات وبرامج فحص البرامج الضارة الأخرى. انطلاقا من روح ما سبق ، قررت كتمرين لتشفير PowerShell أعلاه في JavaScript. فيما يلي نتائج عملي:

مغامرات مالفاري المراوغ ، الجزء الأول

جافا سكريبت المبهمة تخفي PowerShell الخاص بنا. يقوم المتسللون الحقيقيون بذلك مرة أو مرتين.

هذه تقنية أخرى صادفتها على الويب: استخدام Wscript.Shell لتشغيل PowerShell المشفر. بالمناسبة ، جافا سكريبت نفسها الوسائل تسليم البرامج الضارة. تحتوي العديد من إصدارات Windows على ملف ويندوز سيناريو المضيف، والتي يمكن نفسها تشغيل JS.
في حالتنا ، يتم تضمين نص JS الضار كملف doc.js. سيعرض Windows عادةً اللاحقة الأولى فقط ، لذا سيظهر كمستند Word للضحية.

مغامرات مالفاري المراوغ ، الجزء الأول

يظهر رمز JS فقط في أيقونة التمرير. ليس من المستغرب أن يفتح العديد من الأشخاص هذا المرفق معتقدين أنه مستند Word.

في المثال الخاص بي ، قمت بتعديل PowerShell أعلاه لتنزيل البرنامج النصي من موقع الويب الخاص بي. نص PS الذي تمت إزالته يطبع فقط "Evil Malware". كما ترون ، إنه ليس شريرًا على الإطلاق. بالطبع ، يهتم المتسللون الحقيقيون بالوصول إلى كمبيوتر محمول أو خادم ، على سبيل المثال ، من خلال أمر shell. في المقالة التالية ، سأوضح لك كيفية القيام بذلك باستخدام PowerShell Empire.

آمل أنه بالنسبة للمقال التمهيدي الأول ، لم نتعمق كثيرًا في الموضوع. الآن سوف أتركك تأخذ نفسًا ، وفي المرة القادمة سنبدأ في تحليل أمثلة حقيقية للهجمات باستخدام البرامج الضارة الخالية من الملفات دون مقدمات وتحضير غير ضروريين.

المصدر: www.habr.com

إضافة تعليق