Turla Cybergroup Outlook مستتر تحليل

Turla (Snake، Uroboros) هي مجموعة تجسس إلكترونية اكتسبت شهرة في عام 2008 بعد اختراق الأشياء المحمية ، بما في ذلك شبكة القيادة المركزية للقوات المسلحة الأمريكية . منذ ذلك الحين ، متخصص في الهجمات على المنشآت العسكرية والوكالات الدبلوماسية في جميع أنحاء العالم. تشمل الضحايا الشهيرة وزارة الشؤون الخارجية الفنلندية في عام 2013 ، شركة الدفاع السويسرية RUAG من 2014 إلى 2016. والحكومة الألمانية في أواخر 2017 - أوائل 2018.


بعد الحادثة الأخيرة ، نشرت العديد من وسائل الإعلام معلومات حول طرق المهاجمين - باستخدام مرفقات البريد الإلكتروني للتحكم في البرامج الضارة ونقل البيانات المسروقة من النظام. ومع ذلك ، لم يتم تقديم أي معلومات فنية عن الباب الخلفي. في هذا التقرير ، ننشر تحليل Turla backdoor ، الذي تمت إدارته باستخدام مرفقات PDF في البريد الإلكتروني.



وفقا لتقارير وسائل الإعلام ، أصيب العديد من أجهزة الكمبيوتر التابعة لوزارة الخارجية الألمانية بباب خلفي. على ما يبدو ، بدأ الهجوم في عام 2016 واكتشفته الأجهزة الأمنية في نهاية عام 2017. في البداية ، قام المهاجمون باختراق المدرسة الثانوية الاتحادية للإدارة العامة (Hochschule des Bundes) ، وبعد ذلك انتقلوا إلى داخل شبكتها حتى تمكنوا من الوصول إلى شبكة وزارة الخارجية في مارس 2017. . تمكن مشغلو Turla من الوصول إلى بعض البيانات السرية (على سبيل المثال ، البريد الإلكتروني لموظفي وزارة الخارجية الألمانية) لمدة عام تقريبًا.


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


1. النقاط الرئيسية


وظيفتان خلفيتان في Outlook Turla Group.


أولاً ، سرقة الرسائل الصادرة التي يتم توجيهها إلى المهاجم. يؤثر في الغالب على Microsoft Outlook ، ولكنه أيضًا ذو صلة بـ The Bat! ، المشهور في أوروبا الشرقية.


ثانيًا ، استخدام الحروف كطبقة نقل لبروتوكول C&C الخاص بها. يتم استخراج الملفات المطلوبة من خلال أمر الباب الخلفي في مستندات PDF التي تم إنشاؤها خصيصًا كمرفق بالأحرف. يتم إرسال أوامر Backdoor أيضًا في مرفقات PDF. هذا يسمح بالسرية. من المهم ملاحظة أن المهاجمين لا يستغلون أي ثغرات في قارئات PDF أو Microsoft Outlook. يمكن للبرامج الضارة فك تشفير البيانات من مستندات PDF وتفسيرها كأوامر.


أهداف الحملة هي نموذجية من Turla. لقد حددنا العديد من الوكالات الحكومية الأوروبية وشركات الدفاع التي تم اختراقها من هذا الباب الخلفي. من المحتمل أن يستخدمه المهاجمون لضمان الثبات في الشبكات المقيدة ، حيث تمنع الجدران النارية المضبوطة جيدًا أو أدوات أمان الشبكة الأخرى الاتصالات التقليدية بشكل فعال مع خوادم C&C عبر HTTP (S). يسرد الشكل أدناه خطوط كود الباب الخلفي التي تشير إلى بعض نطاقات المستوى الأعلى الحكومية. mfa هو نطاق وزارة الخارجية ، .gouv هو نطاق فرعي للحكومة الفرنسية (.gouv.fr) ، ocse هي منظمة الأمن والتعاون في أوروبا.



الشكل 1. المجالات المرتبطة بالخدمات العامة الموجودة في كود مالفاري


استنادًا إلى بيانات التحليل والقياس عن بُعد ، وجدنا أن هذا الباب الخلفي تم توزيعه في البرية منذ عام 2013 على الأقل. كما هو الحال دائمًا مع Turla ، لا يمكننا التركيز على الطوابع الزمنية التجميعية ، حيث إنها مزيفة عادةً. ومع ذلك ، نعتقد أن الإصدارات الأولى تم تجميعها قبل عام 2013 ، لأن إصدار هذا العام كان متقدمًا بالفعل. بعد ذلك ، وجدنا إصدارًا أكثر تشابهًا مع الإصدار الأساسي ، تم تجميعه عام 2009. تحديد تاريخ الإصدار الدقيق غير ممكن حتى الآن. يعتمد الجدول الزمني أدناه على القياس عن بُعد والبيانات من مصادر مفتوحة:


2009 : الطابع الزمني التجميعي (قد يكون مزيفًا) للإصدار الأساسي من Outlook الخلفي. لقطة فقط لمحتوى البريد الإلكتروني.
2013 : محسّن: يمكن تنفيذ الباب الخلفي للأوامر. يتم إرسالها بالبريد الإلكتروني بتنسيق XML.
2013 : أحدث نسخة معروفة تستهدف The Bat! ..
2016 : محسّن: يتم إرسال الفرق كمرفقات في مستندات PDF التي تم إنشاؤها خصيصًا.
2017 : محسّن: الباب الخلفي قادر على إنشاء مستندات PDF لاستخراج البيانات من قبل مهاجم.
مارس 2018 : الإبلاغ عن حل وسط لشبكة الحكومة الألمانية.
أبريل 2018 : محسّن: يمكن لـ Backdoor تنفيذ أوامر PowerShell باستخدام Empire PSInject.


2. العمارة العالمية


في الإصدارات الأخيرة ، يعد الباب الخلفي عبارة عن ملف DLL مستقل ، حيث يوجد رمز للتثبيت الذاتي والتفاعل مع Outlook و The Bat! ، عملاء البريد الإلكتروني ، حتى إذا تم تنفيذ التثبيت لـ Outlook فقط. يمكن إسقاطها بسهولة بواسطة أي مكون من مكونات Turla يسمح لك بإجراء عمليات إضافية.


في هذا القسم ، يعتمد تحليلنا على عينة تم إصدارها في النصف الأول من عام 2017. قد يتم تضمين معلومات عن عينات أقدم أو أحدث.


2.1. التثبيت


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



الشكل 2. وسيطات التثبيت المحتملة


نظرًا لعدم وجود مسار مضمّن ، يمكن وضع ملف DLL في أي مكان على القرص.


2.1.1. مايكروسوفت أوتلوك


يعتمد مطورو Turla على سرقة كائن COM لضمان استمرار البرامج الضارة. هذه طريقة معروفة ومستخدمة في البرية لسنوات عديدة ، بما في ذلك مجموعة Turla . جوهر الطريقة هو إعادة توجيه كائن COM الذي يستخدمه التطبيق الهدف عن طريق تعديل إدخال CLSID المقابل في سجل Windows.


في حالتنا ، تم إجراء التغييرات التالية على سجل Windows:


HKCU\Software\Classes\CLSID\{49CBB1C7-97D1-485A-9EC1-A26065633066} = Mail Plugin HKCU\Software\Classes\CLSID\{49CBB1C7-97D1-485A-9EC1-A26065633066}\InprocServer32 = [Path to the backdoor DLL] HKCU\Software\Classes\CLSID\{49CBB1C7-97D1-485A-9EC1-A26065633066}\InprocServer32\ThreadingModel = Apartment HKCU\Software\Classes\CLSID\{84DA0A92-25E0-11D3-B9F7-00C04F4C8F5D}\TreatAs = {49CBB1C7-97D1-485A-9EC1-A26065633066} 

{84DA0A92-25E0-11D3-B9F7-00C04F4C8F5D} - تم التقاط CLSID. وهو يتوافق مع مدير بروتوكول Outlook ، ومن الناحية النظرية ، يقوم بتحميل ملف DLL DLL OLMAPI32.DLL . {49CBB1C7-97D1-485A-9EC1-A26065633066} مقترنة بأي برنامج معروف. CLSID هذا تعسفي ويستخدم فقط كعنصر نائب لإعادة توجيه COM.


عند اكتمال التعديل ، سيتم تحميل ملف DLL الخلفي في كل مرة يقوم فيها Outlook بتحميل كائن COM الخاص به. وفقًا لملاحظاتنا ، يحدث هذا أثناء بدء تشغيل Outlook.


لا تتطلب إعادة توجيه COM حقوق المسؤول ، لأنها تنطبق فقط على المستخدم الحالي. توجد إجراءات حماية لمنع عمليات إعادة التوجيه الخبيثة هذه. وفقًا لـ MSDN : "مع نظامي التشغيل Windows Vista و Windows Server 2008 ، إذا كان مستوى تكامل العملية أعلى من المتوسط ​​، فإن وقت تشغيل COM يتجاهل تكوين COM الخاص بالمستخدم ويصل فقط إلى تكوين COM لكل جهاز."


تعمل عملية Outlook بسلامة متوسطة ، كما هو موضح في الصورة أدناه. وبالتالي ، فهي غير محمية من إعادة توجيه COM لكل مستخدم.



الشكل 3 الشكل 3. مستوى سلامة عملية التوقعات


أخيرًا ، يتيح استخدام التقاط كائنات COM الباب الخلفي لتجنب الاكتشاف ، لأن المسار إلى الباب الخلفي ( C:\Users\User\Documents\mapid.tlb في مثالنا) لا يظهر في قائمة المكونات الإضافية ، كما هو موضح في الشكل التالي.



الشكل 4. قائمة ملحقات Outlook - لا تظهر mapid.tlb


حتى إذا لم يظهر البرنامج الضار في قائمة الوظائف الإضافية ، يتم استخدام Microsoft API - MAPI القياسي (واجهة برمجة تطبيقات المراسلة) للتفاعل مع Outlook.


2.1.2. الخفاش!


كما هو محدد في التسلسل الزمني ، لم تعد أحدث إصدارات الباب الخلفي تتضمن رمز التسجيل للمكوّن الإضافي The Bat! .. ومع ذلك ، لا تزال جميع التعليمات البرمجية لإدارة صناديق البريد والرسائل موجودة. إذا لزم الأمر ، يمكن تكوينه يدويًا.


للتسجيل كمكوِّن إضافي لـ The Bat! قامت البرامج الضارة بتعديل ملف %appdata%\The Bat!\Mail\TBPlugin.INI . هذه طريقة مشروعة لتسجيل المكوّن الإضافي لـ The Bat! ، كما تستخدمه بعض المكونات الإضافية (على سبيل المثال ، مضاد البريد العشوائي).


بعد التسجيل في كل مرة تبدأ فيها The Bat! يسمى DLL مستتر. يوضح الشكل أدناه كيفية تنفيذ DLL للتصدير المطلوب للمكونات الإضافية.



الشكل 5. الشكل القياسي للتصدير البرنامج المساعد الخفاش!


2.2. التفاعل مع عميل البريد


يعتمد التفاعل مع عميل البريد على الهدف.


2.2.1. مايكروسوفت أوتلوك


تدعم Microsoft واجهة برمجة تطبيقات الرسائل (MAPI) ، والتي تتيح للتطبيقات التفاعل مع Outlook . يستخدم Turla backdoor واجهة برمجة التطبيقات هذه للوصول إلى صناديق البريد الخاصة بمستخدم / مستخدمين لنظام تم اختراقه وإدارته.


أولاً ، يتصل الباب الخلفي بنظام المراسلة باستخدام MAPILogonEx ، كما هو موضح في الشكل.



الشكل 6. تسجيل الدخول MAPI


المعلمة الثانية (lpszProfileName) فارغة ، يتم MAPI_USE_DEFAULT علامة MAPI_USE_DEFAULT . وفقًا للوثائق: "يجب أن يتجاوز النظام الفرعي للمراسلة اسم ملف التعريف الافتراضي للمعلمة lpszProfileName. MAPI_EXPLICIT_PROFILE تجاهل علامة MAPI_EXPLICIT_PROFILE ما لم يكن lpszProfileName فارغًا أو فارغًا."


في المقابل ، لم MAPI_NEW_SESSION تعيين علامة MAPI_NEW_SESSION . وفقًا للوثائق: "تم lpszProfileName المعلمة lpszProfileName حالة وجود جلسة سابقة تسمى MapiLogonEx مع MAPI_ALLOW_OTHERS علامة MAPI_ALLOW_OTHERS وإذا لم MAPI_NEW_SESSION تعيين علامة MAPI_NEW_SESSION ."


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


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


 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ========= Analyzing msg store ( 1 / 1 ) ========= Service name:MSUPST MS Pst path:C:\Users\[username]\Documents\Outlook Files\[email address].pst Wait main window before open current store Loop count = 46 This is default message store PUSH store to list >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> _____________ FOLDERS _____________ Setting sink on folders in 1 stores. ========Process msg store ( 1 / 1 ) ========= Account: [email address] Successfull set sink on Outbox folder of current store. Successfull set sink on Inbox folder of current store. 

يقوم بإعداد رد اتصال في كل صندوق وارد وارد HrAllocAdviseSink باستخدام وظيفة HrAllocAdviseSink ، كما هو موضح.



الرقم 7 الشكل. تسجيل استدعاء في علبة الصادر


2.2.1.1. صندوق بريد رد الاتصال


يسجل رد الاتصال في البريد الوارد البيانات الوصفية للرسالة الواردة ، بما في ذلك عناوين المرسل والمستلم وأسماء الموضوعات والمرفقات. المثال أدناه (تم حفظ هجاء المطور):


 RECIVE ->{ From: sender@example.com To: receiver@example.net Cc: Bcc: Subj: Mail subject Att: an_attachment.pdf } 

ثم يحلل الرسالة والمرفقات حول موضوع الفرق من المهاجمين. هذه الوظيفة موصوفة في القسم 2.3.


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


2.2.1.2. رد في البريد الصادر


كما هو الحال في البريد الوارد ، يسجل البريد الصادر البيانات الوصفية لجميع رسائل البريد الإلكتروني المرسلة. يتم إنشاء السجل التالي (تم تغيير عنوان عامل التشغيل):


 21:57:56 SEND <-{ From: To: recipient@example.com Cc: Bcc: Subj: My title Att: [1] "last_presentation.pdf" } 21:57:56 Sending data message 21:57:56 Message ENTRYID: [Message ENTRYID] 21:57:56 Data message was send. To: [redacted]@gmx[.]com From: Subj: My title 21:57:56 Set last time. 21:57:56 Spawned thread for cleaning up outgoing messages (id 2848) 21:58:34 Ending work, client: Outlook 21:58:34 Number of messages to remove: 1 21:58:34 Message ENTRYID: [Message ENTRYID] 21:58:34 DeleteMessages executed successfully. 21:58:34 Number of not removed messages: 0 

قد تلاحظ أنها […]@gmx[.]com توجيه كل رسالة صادرة إلى عنوان المهاجمين ، […]@gmx[.]com . GMX - خدمة بريد إلكتروني مجانية شائعة ؛ ربما اختارها المهاجمون ، لأن المنظمات عادة لا تمنع نطاق gmx.com.


عنوان البريد الإلكتروني هذا مشفر في العينة التي درسناها ، كما هو موضح في الصورة أدناه. ومع ذلك ، يمكن تحديثه باستخدام إحدى وظائف الباب الخلفي. يبدو أن المهاجمين يسجلون عنوان بريد إلكتروني واحدًا على الأقل لكل هدف
المنظمات التي تستخدم التنسيق firstname.lastname@gmx[.]com باسم الموظف الحقيقي. هذا يتجنب الكشف ، لأنه غالبًا ما يكون من الصعب التمييز بين هذا العنوان وصندوق البريد الشخصي للموظف الحقيقي. في وقت تحليل العينة في يونيو 2018 ، لم يكن العنوان متاحًا.



الشكل 8. عنوان المشغلين الثابت


يرسل الباب الخلفي تقارير إلى عنوان المشغلين على فترات معينة. يتضمن التقرير معرفات فريدة ، بما في ذلك عنوان MAC وملف السجل الكامل ونتائج الأوامر ، إن وجدت. ثم يقوم بتشفير البيانات باستخدام MISTY1 ، كما هو موضح بالتفصيل في القسم 2.3.2.2 ، ويقوم بإنشاء ملف PDF صالح بمحتوى مشفر. قبل نقطة البيانات المشفرة هذه ، يحتوي المستند على صورة بيضاء 1x1 بتنسيق jpeg ، مشفرة في برنامج ضار. يتيح لك هذا إنشاء ملف PDF صالح يعرض عند فتحه صفحة فارغة واحدة فقط.


أخيرًا ، يقوم الباب الخلفي بإرفاق ملف PDF ويرسل بريدًا إلكترونيًا إلى المهاجمين. الشكل أدناه هو مثال لملف PDF تم إنشاؤه بواسطة باب خلفي.



الشكل 9. بداية وثيقة PDF التي تم إنشاؤها بواسطة باب خلفي لاستخراج البيانات


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


2.2.2. تمويه سلوك المستخدم الضار


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


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



الشكل 10. رسالة غير مقروءة


ثانيًا ، يعترض الباب الخلفي CreateWindowsEx ، كما هو موضح في الأشكال أدناه. هذا يمنع إنشاء النوافذ مثل NetUIHWND التي يستخدمها Outlook للإعلامات التي تظهر في الجزء السفلي الأيمن من الشاشة.



الشكل 11. تكوين التقاط وظيفة CreateWindowsEx



الشكل 12. اعتراض CreateWindowsEx


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



الشكل 13. إشعار رسالة جديدة


2.2.3. الخفاش!


على الرغم من حقيقة أن وظيفة التسجيل في البرنامج المساعد ل The Bat! لم يعد موجودًا ، هناك رمز موروث يؤدي نفس الوظائف التي يستخدمها Outlook باستخدام واجهة برمجة تطبيقات The Bat!


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



الشكل 14. قناة الخفاش!


2.3. مستتر


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


2.3.1. تنسيق Pdf


في بداية عام 2018 ، ذكرت العديد من وسائل الإعلام أن مشغلي Turla يستخدمون مرفقات البريد الإلكتروني لإدارة أجهزة الكمبيوتر المصابة. كانت وسائل الإعلام على حق. كشف تحليل الباب الخلفي لبرنامج Turla Outlook عن كيفية إرسال الأوامر وتفسيرها.


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


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



الشكل 15. استخراج حاوية الأمر من PDF


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



الشكل 16. هيكل حاوية القيادة


مباشرة قبل ناقل التهيئة ، توجد قائمة لوصف الأوامر. يتم عرض قيم معرف مختلفة في الجدول:




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



الشكل 17. وظائف إلغاء الضغط وفك التشفير الأوفست


الفرق في الجزء الأخير من الهيكل. يتم تشفيرها باستخدام MISTY1 وضغطها باستخدام bzip2. يمكن أن يكون هناك العديد من الأوامر المختلفة في نفس ملف PDF ، ويمكن أن يكون لكل منها العديد من الوسائط.


2.3.2. التشفير


نحن هنا وصف خوارزميات التشفير المستخدمة.


2.3.2.1. تشفير XOR


يتم تشفير جزء من الحاوية (بدءًا من أول CRC32) باستخدام XOR مع دفق البايت الذي تم إنشاؤه بواسطة الوظيفة المعرفة من قبل المستخدم. يستغرق البذور ، التي يتم تمريرها إلى srand لإنشاء رقم ثانٍ عن طريق استدعاء rand. يتم استخدام المصنف الثاني في الدالة الموضحة أدناه كوسيطة للبيانات في XOR.


 int __usercall F_bytestream_xor@<eax>(unsigned int len@<edx>, int ciphertext@<ecx>, unsigned int seed) { unsigned int v3; // ebx int v4; // esi unsigned int v5; // edi int result; // eax unsigned int v7; // ecx char *v8; // edx unsigned int v9; // esi byte key[512]; // [esp+Ch] [ebp-204h] char *v11; // [esp+20Ch] [ebp-4h] v3 = len; v11 = (char *)ciphertext; srand(seed); v4 = 0; v5 = 0; do { result = rand(); *(_DWORD *)&key[4 * v5++] = result; } while ( v5 < 128 ); v7 = 0; if ( !v3 ) return result; v8 = v11; do { v8[v7] ^= key[v4]; v9 = v4 + 1; result = -(v9 < 512); v4 = result & v9; ++v7; } while ( v7 < v3 ); return result; } 

2.3.2.2. ميستي 1


يفضل مطورو Turla استخدام خوارزميات تشفير أقل شيوعًا أو معدلة في أماكنهم الخلفية:



في الباب الخلفي لبرنامج Outlook ، قاموا بتطبيق MISTY1 ، وهي خوارزمية تشفير متناظرة تم تطويرها بواسطة مشفرو Mitsubishi Electric في عام 1995. له الخصائص التالية:


  • متماثل
  • يحتوي على مفتاح 128 بت
  • يستخدم جدولين مسبقين: s7 (128 بايت) و s9 (2048 بايت)
  • يستخدم ثلاث وظائف: FL ، FO ، FI
    o يقوم FL ببعض عمليات XOR بين كتابة البايت والمفتاح الممتد
    يقوم FO بتنفيذ عمليات XOR بين السجل والمفتاح الموسع ، ويستخدم أيضًا FI
    يقوم FI بتوسيع غير خطي باستخدام s7 و s9
  • يعمل مع كتل من 64 بت
  • ينفذ ثماني دورات (دورة - استدعاء وظيفة FO)
  • يستخدم التشفير Feistel


الرقم 18. MISTY1



الرقم 19. الشكل ثماني دورات لتشفير كتلة


قام مطورو Turla بتعديل الخوارزمية قليلاً:


  • أضافت عمليتين XOR إلى وظيفة FI كما هو موضح في الشكل أدناه
  • يتم إنشاء مفتاح 128 بت من مفتاحين من 1024 بت مشفرة بشدة بالإضافة إلى متجه تهيئة 2048 بت
  • تغيير الجداول s7 و s9. هذا يعطل تشغيل جميع الأدوات التي تتعرف على خوارزميات التشفير بناءً على قيم s-table. تحتوي كل جداول S المعدلة والأصلية على نفس القيم ، وتم تبديلها ببساطة


الشكل 20. مقارنة بين وظائف FI (الأصلي على اليسار ، تطوير Turla على اليمين)


2.3.3. وظائف


يحتوي الباب الخلفي على العديد من الوظائف ، من تقشير الملفات إلى تنفيذ الأوامر. وصف الوظائف المختلفة في الجدول أدناه.




للدالة 0x29 ، قام مطورو Turla بنسخ الرمز من مشروع Empire PSInject . هذا يسمح لك بتشغيل كود PowerShell في ملف قابل للتنفيذ خاص يسمى PowerShell Runner دون استدعاء powershell.exe . الميزة الرئيسية هي أنه لا يزال بإمكان البرامج الضارة تنفيذ أوامر PowerShell حتى إذا تم تأمين ملف powershell.exe على جهاز كمبيوتر تم اختراقه.


بعد تحليل الباب الخلفي ، تمكنا من إنشاء مستند PDF يمكن تفسيره بنجاح بواسطة برنامج ضار. يوضح الشكل التالي تنفيذ MessageBox وإطلاق الآلة الحاسبة ( calc.exe ) بعد أن يتلقى Outlook بريدًا إلكترونيًا يحتوي على ملف PDF هذا. يوضح هذا أن الباب الخلفي ، الذي يُقصد به على الأرجح تلقي أوامر في مرفقات PDF ، فعال ويمكن التحكم فيه من قبل أي شخص يفهم هذا التنسيق المخصص.



شكل 21. تنفيذ الأوامر المحددة في وثيقة PDF


2.4. وظائف إضافية


بالإضافة إلى إمكانات الباب الخلفي التي يتم تنفيذها كبرنامج إضافي لعميل البريد الإلكتروني ، فإن البرامج الضارة لها وظائف أخرى.


2.4.1. نظام الملفات الظاهري


لا يستخدم البرنامج الضار أي ملفات تكوين ، ولكنه يدعم نظام ملفات ظاهري صغير في HKCU\Software\Microsoft\Windows\CurrentVersion\Settings\ZonePolicy\ تسجيل Windows HKCU\Software\Microsoft\Windows\CurrentVersion\Settings\ZonePolicy\ . خزائن Turla الخلفية الأخرى ، مثل Gazer ، تقوم أيضًا بتخزين نظام الملفات الظاهري في سجل Windows. تمكنا من تحديد بعض قيم التسجيل ، كما هو موضح في الجدول التالي.



2.4.2. المجلات


كما ذكرنا سابقًا ، يحفظ البرنامج مجلة يتم إرسالها بانتظام إلى المشغل عن طريق البريد الإلكتروني في مستند PDF تم إنشاؤه خصيصًا. يتم تخزينها في %appdata%/Microsoft/Windows/scawrdot.db ويتم تشفيرها باستخدام مفتاح XOR الثابت 512 بايت. يتم مسح ملف السجل بعد كل عملية استخراج لعوامل التشغيل. وهكذا ، خلال فحص الطب الشرعي ، سيكون من المستحيل رؤية جميع الإجراءات السابقة من الباب الخلفي ، فقط الأخيرة.


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



الشكل 22. ملف السجل المشفرة


3. الاستنتاجات


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


باب Turla الخلفي ليس أول من يستخدم صندوق البريد الحقيقي للضحية لتلقي الأوامر واستخراج البيانات. ومع ذلك ، هذا هو الباب الخلفي الأول الذي يتم تعلمه باستخدام واجهة برمجة التطبيقات (MAPI) القياسية للتفاعل مع Microsoft Outlook. يعد هذا تحسنًا كبيرًا مقارنة بالإصدار السابق الذي درسناه ، والذي استخدم Outlook Express. في المقابل ، يعمل Turla backdoor الجديد حتى مع أحدث إصدارات Outlook.


, , , , Turla . , Uroburos, .


, Turla, , . , , . , - , .


, PDF-, Turla, , .


ESET Turla, .


GitHub .


4.


4.1. تجزئات


8A7E2399A61EC025C15D06ECDD9B7B37D6245EC2 — Win32/Turla.N; (GMT) 2013-06-28 14:15:54
F992ABE8A67120667A01B88CD5BF11CA39D491A0 — Win32/Turla.AW; GMT 2014-12-03 20:50:08
CF943895684C6FF8D1E922A76B71A188CFB371D7 — Win32/Turla.R; GMT 2014-12-03 20:44:27
851DFFA6CD611DC70C9A0D5B487FF00BC3853F30 — Win32/Turla.DA; GMT 2016-09-15 08:14:47


4.2.


%appdata%/Microsoft/Windows/scawrdot.db
%appdata%/Microsoft/Windows/flobcsnd.dat
mapid.tlb


4.3.


HKCU\Software\Microsoft\Windows\CurrentVersion\Settings\ZonePolicy\
HKCU\Software\Classes\CLSID{49CBB1C7-97D1-485A-9EC1-A26065633066}
HKCU\Software\Classes\CLSID{84DA0A92-25E0-11D3-B9F7-00C04F4C8F5D}

Source: https://habr.com/ru/post/ar421399/


All Articles