روابط لجميع الأجزاء:الجزء 1. الحصول على الوصول الأولي (الوصول الأولي)الجزء 2. التنفيذالجزء 3. التثبيت (المثابرة)الجزء 4. تصعيد الامتيازالجزء 5. التهرب من الدفاعالجزء 6. الحصول على بيانات الاعتماد (وصول بيانات الاعتماد)الجزء 7. الاكتشافالجزء 8. الحركة الجانبيةتصعيد الامتياز هو نتيجة الإجراءات التي تسمح لمهاجم أو برنامج ضار بالحصول على مستوى أعلى من الأذونات في النظام أو الشبكة التي تمت مهاجمتها. تصف تقنيات تصعيد الامتياز الطرق التي يمكن من خلالها للخصم ، بعد الحصول على وصول غير مخول إلى نظام مهاجم ، استخدام "نقاط ضعف" مختلفة للنظام أن يحصل على حقوق المسؤول المحلي أو النظام أو الجذر. يمكن اعتبار استخدام المهاجمين لحسابات المستخدمين الذين لديهم حقوق الوصول إلى أنظمة أو أذونات معينة لأداء عمليات معينة تصعيدًا في الامتيازات.
المؤلف غير مسؤول عن العواقب المحتملة لتطبيق المعلومات الواردة في المقالة ، ويعتذر أيضًا عن عدم الدقة المحتمل في بعض الصيغ والمصطلحات. المعلومات المنشورة هي رواية مجانية لمحتويات MITER ATT & CK .من المهم إلغاء تضمين بعض التقنيات الموضحة في مصفوفة
ATT @ CK في وقت واحد في عدة مراحل من سلسلة الهجوم ، على سبيل المثال ، يمكن استخدام اعتراض بحث DLL لتأمين الوصول عن طريق التنفيذ غير المصرح به لـ DLL ضار ولزيادة الامتيازات من خلال تشغيل DLL في العملية ، العمل في سياق مستخدم أكثر امتيازًا.
النظام: Windows
الحقوق: المستخدم ، المسؤول
الوصف: يمكن للمهاجمين استخدام رموز الوصول لتنفيذ الإجراءات في سياقات أمان المستخدم أو النظام المختلفة ، وبالتالي تجنب الكشف عن النشاط الضار. يمكن للخصم استخدام وظائف Windows API لنسخ رموز الدخول من العمليات الحالية (سرقة الرمز) ، لذلك يجب أن يكون في سياق مستخدم مميز (على سبيل المثال ، مسؤول). تُستخدم سرقة رموز الوصول عادة لرفع الامتيازات من مستوى المسؤول إلى مستوى النظام. يمكن للخصم أيضًا استخدام رمز وصول إلى الحساب للمصادقة على نظام بعيد ، إذا كان هذا الحساب لديه الأذونات اللازمة على النظام البعيد.
فكّر في عدة طرق لإساءة استخدام رموز الدخول:
- سرقة وانتحال الرموز. انتحال الرموز المميزة هو قدرة نظام التشغيل على بدء سلاسل رسائل في سياق أمان بخلاف سياق العملية التي ينتمي إليها هذا الخيط. بمعنى آخر ، يسمح لك تجسيد الرموز المميزة بتنفيذ أي إجراءات نيابة عن مستخدم آخر. يمكن للخصم تكرار رمز وصول باستخدام وظيفة DuplicateTokenEX واستخدام ImpersonateLoggedOnUser لاستدعاء مؤشر ترابط في سياق مستخدم قام بتسجيل الدخول ، أو استخدام SetThreadToken لتعيين رمز وصول إلى دفق.
- قم بإنشاء عملية باستخدام رمز وصول. يمكن للمهاجم إنشاء رمز وصول باستخدام وظيفة DuplicateTokenEX ثم استخدامه مع CreateProcessWithTokenW لإنشاء عملية جديدة يتم تشغيلها في سياق المستخدم المنتحل.
- الحصول على رموز الدخول وانتحال هويتها. يمكن للخصم ، الذي لديه اسم مستخدم وكلمة مرور ، إنشاء جلسة تسجيل دخول باستخدام وظيفة واجهة برمجة تطبيقات LogonUser ، والتي ستعيد نسخة من رمز الوصول إلى الجلسة لجلسة جديدة ، ثم تستخدم وظيفة SetThreadToken لتعيين رمز مميز إلى سلسلة المحادثات. Metasploit Meterpreter و CobaltStrike لديهم أدوات للتعامل مع رموز الوصول لرفع الامتيازات.
توصيات الحماية: من أجل الاستفادة الكاملة من التكتيكات المذكورة أعلاه ، يجب أن يكون لدى المهاجم حقوق مسؤول النظام ، لذلك لا تنس تحديد امتيازات المستخدمين العاديين. يمكن لأي مستخدم خداع رموز الدخول إذا كان لديه بيانات اعتماد شرعية. تقييد قدرة المستخدمين والمجموعات على إنشاء رموز وصول:
GPO: تكوين الكمبيوتر> [السياسات]> إعدادات Windows> إعدادات الأمان> السياسات المحلية> تعيين حقوق المستخدم: إنشاء كائن مميزحدد أيضًا من يمكنه استبدال رموز العملية للخدمات المحلية أو خدمات الشبكة:
GPO: تكوين الكمبيوتر> [السياسات]> إعدادات Windows> إعدادات الأمان> السياسات المحلية> تعيين حقوق المستخدم: استبدال رمز مستوى العمليةالنظام: Windows
الحقوق: المسؤول
الوصف: يمكن تشغيل تطبيقات إمكانية الوصول (مكبر الشاشة ولوحة المفاتيح على الشاشة وما إلى ذلك) باستخدام تركيبات المفاتيح قبل قيام المستخدم بتسجيل الدخول إلى النظام. يمكن للمهاجم استبدال ملفات بدء التشغيل لهذه البرامج أو تغيير طريقة إطلاقها وفتح وحدة تحكم الأوامر أو الحصول على باب خلفي دون تسجيل الدخول.
- C: \ Windows \ System32 \ sethc.exe - يتم تشغيله عن طريق الضغط على مفتاح Shift 5 أضعاف ؛
- C: \ Windows \ System32 \ utilman.exe - تم إطلاقه بالضغط على تركيبة Win + U.
في WinXP والإصدارات الأحدث ، يمكن استبدال sethc.exe و utilman.exe ، على سبيل المثال ، بـ cmd.exe ، ثم عند الضغط على تركيبة المفاتيح المطلوبة ، يبدأ cmd.exe قبل دخول Windows بامتيازات النظام.
في Vista والإصدارات الأحدث ، تحتاج إلى تغيير مفتاح التسجيل الذي يقوم بتكوين cmd.exe أو برنامج آخر كمصحح أخطاء ، على سبيل المثال ، لـ ultiman.exe. بعد تحرير التسجيل والضغط على تركيبة المفاتيح المطلوبة على شاشة تسجيل الدخول أو عند الاتصال بالمضيف عبر RDP ، سيتم تنفيذ cmd.exe بحقوق النظام.
هناك أيضًا برامج Windows التي يمكن استخدامها لتطبيق تقنية الهجوم هذه:
- C: \ Windows \ System32 \ osk.exe ؛
- C: \ Windows \ System32 \ Magnify.exe ؛
- C: \ Windows \ System32 \ Narrator.exe ؛
- C: \ Windows \ System32 \ DisplaySwitch.exe ؛
- C: \ Windows \ System32 \ AtBroker.exe.
توصيات الأمان: قم بتكوين بداية المصادقة الإلزامية على الشبكة للمستخدمين عن بُعد قبل إنشاء جلسة RDP وعرض شاشة تسجيل الدخول (
ممكّنة افتراضيًا في Windows Vista والإصدارات الأحدث ). استخدم بوابة سطح المكتب البعيد لإدارة الاتصالات وتكوين أمان RDP.
النظام: Windows
الحقوق: مسؤول النظام
الوصف: يتم تحميل مكتبات DLL المحددة في قيمة مفتاح AppCertDLLs في كل عملية تستدعي وظائف API المستخدمة بشكل متكرر:
CreateProcess و CreateProcessAsUser و CreateProcessWithLoginW و CreateProcessWithTokenW و WinExec . يمكن إساءة استخدام قيمة AppCertDLLs الرئيسية عن طريق التسبب في تحميل DLL ضار وتشغيل عمليات معينة. يتم تخزين AppCertDLLs في مفتاح التسجيل التالي:
HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager .
توصيات الحماية: استخدم جميع الوسائل الممكنة لحظر البرامج التي قد تكون خطيرة وتنزيل ملفات DLL غير المعروفة ، مثل AppLocker و DeviceGuard.
النظام: Windows
الحقوق: مسؤول النظام
الوصف: يتم تحميل مكتبات DLL المحددة في قيمة مفتاح AppInit_DLLs في كل عملية يقوم بتحميل user32.dll. عمليا ، هذا هو كل برنامج تقريبا.
يتم تخزين AppInit_DLLs في مفاتيح التسجيل التالية:
- HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows NT \ CurrentVersion \ Windows ؛
- HKEY_LOCAL_MACHINE \ Software \ Wow6432Node \ Microsoft \ Windows NT \ CurrentVersion \ Windows.
يمكن إساءة استخدام قيمة AppInit_DLLs لتجاوز الامتيازات عن طريق تحميل ملفات DLL الضارة وبدء عمليات معينة. تم تعطيل وظيفة AppInit_DLLs في نظام التشغيل Windows 8 والإصدارات الأحدث عند تنشيط التمهيد الآمن.
توصيات الحماية: ضع في اعتبارك استخدام إصدار نظام تشغيل قبل Windows 8 وتمكين التمهيد الآمن. استخدم جميع أنواع الوسائل لحظر البرامج التي يُحتمل أن تكون خطرة وتنزيل ملفات DLL غير المعروفة ، مثل AppLocker و DeviceGuard.
النظام: Windows
الحقوق: المسؤول
الوصف: تم إنشاء
البنية التحتية / إطار عمل توافق تطبيقات Microsoft Windows لضمان توافق البرامج مع تحديثات Windows وتغييرات رمز نظام التشغيل. يستخدم نظام التوافق ما يسمى shim ("gaskets") - المكتبات التي تعمل كعازل بين البرنامج ونظام التشغيل. باستخدام ذاكرة التخزين المؤقت الرقائق ، يحدد النظام الحاجة إلى حشوات الرقائق (المخزنة كقاعدة بيانات .sdb). تقوم ملفات sdb المختلفة بتخزين إجراءات مختلفة لاعتراض رمز التطبيق ومعالجته ثم إعادة توجيهه إلى نظام التشغيل. يتم تخزين قائمة جميع حشوات الرقائق المثبتة بواسطة المثبت (sdbinst.exe) بشكل افتراضي في:
- ٪ WINDIR٪ \ AppPatch \ sysmain.sdb ؛
- HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ InstalledSDB .
يتم تخزين قواعد بيانات الرقائق المخصصة في:
- ٪ WINDIR٪ \ AppPatch [64] \ مخصص ؛
- HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Custom .
لضمان الحماية في وضع المستخدم ، يتم استبعاد القدرة على تغيير نواة نظام التشغيل باستخدام shim-gaskets ، ويلزم حقوق المسؤول لتثبيتها. ومع ذلك ، يمكن استخدام بعض منصات الرقائق لتجاوز التحكم في حساب المستخدم (UAC) وحقن DLL وتعطيل
منع تنفيذ البيانات ومعالجة استثناء Srtucture ، بالإضافة إلى عناوين الذاكرة المعترضة. يمكن للمهاجم الذي يستخدم حشوات منع التسرب زيادة الامتيازات ، وتثبيت الأبواب الخلفية ، وتعطيل حماية نظام التشغيل ، مثل Windows Defender.
توصيات الحماية: لا توجد طرق عديدة لمنع تلمع التطبيق. لا يوصى بتعطيل توافق التطبيقات لتجنب مشاكل استقرار نظام التشغيل. أصدرت Microsoft
KB3045645 ، والتي ستزيل علامة "الرفع التلقائي" في ملف sdbinst.exe لمنع استخدام نظام الرقائق لتجاوز UAC.
النظام: Windows
الحقوق: المستخدم ، المسؤول
الوصف: هناك العديد من الطرق لتجاوز UAC ، والتي يتم تنفيذها الأكثر شيوعًا في مشروع
UACMe . يتم اكتشاف طرق جديدة لتجاوز UAC بانتظام ، مثل إساءة استخدام تطبيق النظام
eventvwr.exe ، والذي يمكنه تنفيذ ملف ثنائي أو برنامج نصي مرتفع. يمكن أيضًا تضمين البرامج الضارة في العمليات الموثوقة التي تتيح UAC من خلالها تصعيد الامتيازات دون مطالبة المستخدم.
لتجاوز UAC باستخدام eventvwr.exe ، يتم تعديل المفتاح في سجل Windows:
[HKEY_CURRENT_USER] \ Software \ Classes \ mscfile \ shell \ open \ command .
لتجاوز UAC باستخدام sdclt.exe ، يتم تعديل المفاتيح الموجودة في تسجيل Windows:
[HKEY_CURRENT_USER] \ Software \ Microsoft \ Windows \ CurrentVersion \ App Paths \ control.exe ؛
[HKEY_CURRENT_USER] \ Software \ Classes \ exefile \ shell \ runas \ command \ replaceCommand.توصيات الحماية: قم بإزالة المستخدمين من مجموعة المسؤولين المحليين على الأنظمة المحمية. إن أمكن ، قم بتمكين أعلى مستوى من الحماية في إعدادات UAC.
النظام: Windows
الحقوق: المستخدم ، المسؤول ، النظام
الوصف: تتمثل التقنية في استغلال الثغرات الأمنية في الخوارزمية للعثور على ملفات DLL التي تحتاجها للعمل (
MSA2269637 )
بواسطة التطبيقات . غالبًا ما يكون دليل بحث DLL هو دليل العمل الخاص بالبرنامج ، لذا يمكن للمهاجمين استبدال DLL المصدر بآخر ضار بنفس اسم الملف.
يمكن تنفيذ الهجمات عن بعد على عمليات بحث DLL عندما يقوم البرنامج بتثبيت دليله الحالي في دليل بعيد ، على سبيل المثال ، مشاركة شبكة. أيضًا ، يمكن للمهاجمين تغيير طريقة البحث عن ملفات DLL وتحميلها مباشرةً عن طريق استبدال ملفات .manifest أو. المحلية ، التي تصف معلمات بحث DLL. إذا كان البرنامج الذي تمت مهاجمته يعمل بمستوى عالي من الامتيازات ، فسيتم أيضًا تنفيذ ملف DLL الخبيث الذي تم تحميله به بحقوق عالية. في هذه الحالة ، يمكن استخدام التقنية لزيادة الامتيازات من المستخدم إلى المسؤول أو النظام.
توصيات الحماية: منع تحميل DLL عن بُعد (يتم تمكينه افتراضيًا في Windows Server 2012+ ومتاح مع تحديثات XP + و Server 2003+). تمكين وضع البحث الآمن لـ DLL ، والذي يقصر أدلة البحث على الدلائل مثل
٪ SYSTEMROOT٪ قبل إجراء بحث DLL في دليل التطبيق الحالي.
تمكين وضع البحث الآمن DLL:
تكوين الكمبيوتر> [السياسات]> قوالب الإدارة> MSS (القديم): MSS: (SafeDllSearchMode) تمكين وضع البحث الآمن DLL.مفتاح التسجيل المقابل:
HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ SafeDLLSearchMode.ضع في اعتبارك مراجعة نظام محمي لإصلاح أوجه القصور في DLL باستخدام أدوات مثل PowerUP في PowerSploit. لا تنس حظر البرامج الضارة والخطيرة المحتملة ، بالإضافة إلى اتباع
توصيات Microsoft .
النظام: macOS
الحقوق: المستخدم
الوصف: تعتمد التقنية على
الثغرات الأمنية في خوارزميات البحث في مكتبة dylib الديناميكية على نظامي macOS و OS X. خلاصة القول هي تحديد dylib الذي يقوم التطبيق المهاجم بتحميله ثم وضع الإصدار الضار من dylib الذي يحمل نفس الاسم في دليل العمل الخاص بالتطبيق. سيؤدي ذلك إلى تحميل التطبيق dylib ، الموجود في دليل عمل البرنامج. في هذه الحالة ، سيتم تنفيذ Dylib الخبيث بحقوق الوصول للتطبيق الذي تمت مهاجمته.
نصائح أمنية
: منع المستخدمين من كتابة الملفات إلى دلائل بحث dylib. تدقيق الثغرات الأمنية باستخدام
Dylib Hijacking Scanner من Objective-See.
النظام: Windows و Linux و macOS
الحقوق: المستخدم
الوصف: يمكن للمعارضين زيادة الامتيازات في النظام المهاجم باستخدام نقاط الضعف في البرامج.
توصيات الحماية: تحديثات برامج منتظمة لجميع محطات العمل والخوادم ومعدات الشبكة والأجهزة الأخرى المتصلة بالشبكة المحمية. تحليل أنواع التهديدات ونقاط الضعف وبرامج الاستغلال التي يمكن استخدامها ضد المنظمة المحمية. يوصى أيضًا بأنظمة الحماية من
الاستغلال مثل
Windows Defender Exploit Guard (WDEG) لنظام التشغيل Windows 10 أو
مجموعة أدوات تجربة التخفيف المحسنة (EMET) للإصدارات السابقة من Windows.
h3
EWM Injection (حقن ذاكرة النافذة الإضافية)النظام: Windows
الحقوق: مسؤول النظام
الوصف: التقنية هي إساءة استخدام ذاكرة النوافذ الإضافية ، والتي تسمى ذاكرة النافذة الإضافية (EWM). حجم EWM هو 40 بايت ، مناسب لتخزين مؤشر 32 بت وغالبًا ما يستخدم للإشارة إلى الإجراءات. يمكن للبرامج الخبيثة أثناء سلسلة الهجوم وضع مؤشر للشفرة الضارة في EWM ، والذي سيتم إطلاقه لاحقًا من خلال عملية التطبيق المصاب.
توصيات الحماية: نظرًا لأن تقنيات حقن EWM تستند إلى إساءة استخدام وظائف تطوير نظام التشغيل ، يجب توجيه جهود الحماية لمنع بدء البرامج الضارة والأدوات الضارة. من الممارسات الجيدة تحديد وحظر البرامج التي يُحتمل أن تكون خطرة باستخدام AppLocker أو تطبيقات القائمة البيضاء أو تطبيق سياسات تقييد البرامج.
النظام: Windows
الحقوق: المستخدم ، المسؤول
الوصف: جوهر التقنية هو استبدال الملفات القابلة للتنفيذ التي يتم تشغيلها تلقائيًا من خلال عمليات مختلفة (على سبيل المثال ، عند تشغيل نظام التشغيل أو في وقت معين ، إذا تم تكوين حقوق الملفات القابلة للتنفيذ بشكل غير صحيح). بعد الانتحال ، سيتم تشغيل الملف الضار بحقوق العملية ، لذلك إذا كانت العملية ذات مستوى وصول أعلى ، فسيكون المهاجم قادرًا على تصعيد الامتيازات. في هذه التقنية ، يمكن للمهاجمين محاولة معالجة الملفات الثنائية لخدمة Windows.
يرتبط نوع آخر من الهجوم بنواقص الخوارزميات في عمل مثبِّتات الاستخراج الذاتي. أثناء عملية التثبيت ، غالبًا ما يقوم المثبتون بفك حزم الملفات المفيدة المختلفة ، بما في ذلك .dll و .exe ، في الدليل٪ TEMP٪ ، ومع ذلك ، قد لا يقوموا بتعيين الأذونات المناسبة لتقييد الوصول إلى الملفات غير المعبأة ، مما يسمح للمهاجمين بالانتحال للملفات ، و ونتيجة لذلك ، قم بزيادة الامتيازات أو تجاوز التحكم في الحساب ، مثل يعمل بعض المثبتات بامتيازات موسعة.
توصيات الحماية: تقييد امتيازات الحساب بحيث يمكن للمسؤولين فقط إدارة الخدمات والتفاعل مع الملفات الثنائية التي تستخدمها الخدمات. تعطيل خيارات تصعيد امتياز UAC للمستخدمين القياسيين. يتم تخزين إعدادات UAC في مفتاح التسجيل التالي:
- [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System] .
لرفض طلبات تصعيد الامتيازات تلقائيًا ، يجب عليك إضافة مفتاح:
- "ConsentPromptBehaviorUser" = الكلمة المزدوجة: 00000000.
للتحكم في عمل المثبتات ، تحتاج إلى إضافة مفتاح:
- "EnableInstallerDetection" = dword: 00000001 ، الأمر الذي سيتطلب كلمة مرور لتثبيت البرامج.
النظام: Windows
الحقوق: مسؤول النظام
الوصف: يتم عادة تخزين وظائف Windows API في مكتبات DLL. تقنية التثبيت هي إعادة توجيه المكالمات إلى وظائف API من خلال:
- إجراءات الخطاف - الإجراءات المضمنة في نظام التشغيل والتي تنفذ التعليمات البرمجية عندما يتم استدعاء الأحداث المختلفة ، على سبيل المثال ، ضغطات المفاتيح أو تحريك الماوس ؛
- تعديلات على جدول العنوان (IAT) ، الذي يخزن المؤشرات على وظائف API. سيسمح لك هذا بـ "خداع" التطبيق المهاجم ، مما يجبره على تشغيل وظيفة ضارة ؛
- التغيير المباشر للوظيفة (الربط) ، حيث يتم تغيير أول 5 بايت من الوظيفة ، بدلاً من ذلك يتم إدخال الانتقال إلى وظيفة ضارة أو وظيفة أخرى يحددها المهاجم.
مثل عمليات الحقن ، يمكن للمهاجمين استخدام التثبيت لتنفيذ التعليمات البرمجية الضارة ، وإخفاء تنفيذها ، والوصول إلى ذاكرة العملية التي تمت مهاجمتها وزيادة الامتيازات. يمكن للمهاجمين التقاط مكالمات API التي تتضمن المعلمات التي تحتوي على بيانات المصادقة. عادةً ما يستخدم الربط مجموعة أدوات لإخفاء النشاط الضار في النظام.
: , , . . hooking- SetWindowsHookEx SetWinEventHook, , .
: Windows
: , System
: Image File Execution Options (IFEO) , :
- HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options/[executable]
- HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\[executable] , [executable] — .
,
[executable] , . IFEO , , .
: , - , , . IFEO- .
Debug_process Debug_only_this_process .
: macOS
:: — Launch Daemon, plist-. Launchd () plist- :
- /System/Library/LaunchDeamons;
- /Library/LaunchDeamons.
Launch Daemon , root, . plist- root:while, , , . , plist, , , .
: , Launch Daemon. plist- KnockKnock.
: Windows
: , System
: , . , . , System. , Windows API Windows PowerShell.
: , . AppLocker
Software Restriction Policy .
: Windows
: , , system
: , . :
- . , , C:\Program Files\service.exe , C:\Program.exe , Windows .
- . PATH C:\example c:\Windows\System32 C:\example\net.exe , net, C:\example\net.exe , c:\Windows\System32\net.exe .
- (Search order hijacking). , Windows, , , . , «example.exe» cmd.exe net use. example.exe net.exe c:\Windows\System32\net.exe . , net.com net.exe, Windows net.com , PATHEXT.
DLL DLL Search Hijacking .: , , , PATH, . . , , , . :\ Windows, .
: macOS
: ,
: plist-, . plist,
/Library/Preferences , plist
~/Library/Preferences .
: plist, .
: Windows
: , System
: DLL System Windows (Spoolsv.exe). Spoolsv.exe (port monitor) — DLL-, LAN, USB, LPT COM- . DLL
C:\windows\system32 :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors .
Port Monitor API AddMonitor .
: - .
: Windows, Linux, macOS
: , , system, root
: — . , / , , . . , . .
Windows• DLL-. DLL (Remote thread — , ). , DLL, CreateRemoteTread, LoadLibrary .
• PE- (Portable executable injection) PE-, DLL EXE. - , .
• (Thread execution hijacking) DLL . Process Hollowing, .
• (Asynchronous Procedure Call (APC) injection) APC- (APC Queue) . APC-, « (Earle Bird injection)», APC. AtomBombing — , APC , (Global atom table).
• (Thread Local Storage (TLS) injection) PE- .
Mac Linux• LD_RPELOAD, LD_LIBRARY_PATH (Linux), DYLIB_INSERT_LIBRARIES (macOS X) dlfcn (API) ( ) , API .
• Ptrace .
• /proc/[pid]/mem / , - .
• VDSO (Virtual dynamic shared object) ELF, linux-vdso.so.
, . .
: . . - , AppLocker. Yama ptrace, ptrace . , . SELinux, grsecurity, AppArmor.
: Windows
: ,
: , SID, objectSID. SID sIDHistory, , . , , SID-History SID, , .
: Windows Server 2003 SID (SID Filtering), SID, , , .
SID:
• SIDHistory () :
netdom trust /domain: /EnableSIDHistory:no ;
•
SID Filter Quarantining . , , SID, , . SID Filter Quarantining :
netdom trust /domain: /quarantine:yes .
SID Filtering . , , , SID Filtering .
: Windows
: , ,
: at, schtasks Windows , . , , RPC, . . System .
: . , PowerUP PowerSploit, . System, "
" "
: ".
: Windows
: , System
: Windows , , , — sc.exe, PowerShell Reg. , , , FailureCommand, , .
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services .
: , , . - , , Windows AppLocker.
: Linux, macOS
:: Setuid Setgid — Unix-, . root, , sudo, Setuid Setgid. Setuid Setgid shell escape (, - ) Setuid Setgid . ls -l «s» «x». chmod Setuid Setgid
chmod 4777 [] chmod u + s [] .
: Setuid Setgid .
: macOS
:: , macOS Sierra, StartupItems root . StartupItems —
/Library/Startupitems , StartupParameters.plist. :
/Library/Startupitems/[MyStartupItem] .
: StartupItems ,
/Library/Startupitems/ .
: Linux, macOS
:: Sudo . Sudo
/etc/sudoers , . sudoers , . , sudoers , :
username ALL=(ALL) NOPASSWD: ALL .
: sudoers , Sudo. Auditd Linux , ID ( , sudo).
النظام: Linux و macOS
الحقوق: المستخدم
الوصف: برامج ضارة مختلفة ، مثل
OCX Proton Malware ، يمكنها إساءة استخدام إعدادات sudo لتنفيذ التعليمات البرمجية كجذر دون إدخال كلمة مرور. منذ أن تم إنشاء مجموعة أدوات sudo لإدارة النظام ، فإنها تحتوي على بعض الوظائف المفيدة مثل
timestamp_timeout - تخزن هذه المعلمة مقدار الوقت بالدقائق بين بداية sudo التي لن يطالب خلالها الأمر بكلمة مرور الجذر. تمكن سودو من تخزين بيانات الاعتماد لبعض الوقت. يتم تخزين الطابع الزمني لبداية سودو الأخيرة في
/ var / db / sudo ويستخدم لتحديد المهلة المحددة. بالإضافة إلى ذلك ، هناك متغير
tty_tickets يعالج كل جلسة طرفية جديدة على حدة ، لذلك لن تؤثر المهلة في مثيل واحد من وحدة التحكم على المهلة في مثيل آخر.
توصيات الحماية: قم بتعيين المعلمة
timestamp_timeout = 0 بحيث يتطلب النظام كلمة مرور الجذر في كل مرة يتم تشغيل sudo. قم
بتشغيل المعلمة
tty_tickets لمنع تنفيذ الهجوم من خلال جلسات سطر الأوامر.
الوصف: يمكن للمهاجمين سرقة بيانات اعتماد حساب مستخدم أو خدمة معينة باستخدام بيانات اعتماد الوصول ، والتقاط بيانات الاعتماد في عملية الاستخبارات باستخدام الهندسة الاجتماعية. يمكن استخدام بيانات الاعتماد المخترقة لتجاوز أنظمة التحكم في الوصول والوصول إلى الأنظمة البعيدة والخدمات الخارجية ، مثل VPN و OWA و Remote Desktop أو للحصول على امتيازات مرتفعة على أنظمة ومناطق محددة من الشبكة. إذا نجح السيناريو ، يمكن للمهاجمين رفض البرامج الضارة لجعل من الصعب اكتشافها. أيضًا ، يمكن للمهاجمين إنشاء حسابات باستخدام أسماء وكلمات مرور محددة مسبقًا للحفاظ على الوصول الاحتياطي في حالة محاولات فاشلة لاستخدام وسائل أخرى.
توصيات الحماية: قم
بتطبيق سياسة كلمة المرور ، واتبع التوصيات لتصميم وإدارة شبكة الشركة للحد من استخدام الحسابات المميزة على جميع المستويات الإدارية. التحقق المنتظم من المجال والحسابات المحلية وحقوقهم من أجل تحديد تلك التي يمكن أن تسمح للمهاجمين بالوصول على نطاق واسع. مراقبة نشاط الحساب باستخدام أنظمة SIEM.
النظام: Windows و Linux و macOS
الوصف: يمكن للمهاجم استخدام Web Shell كبوابة للوصول إلى شبكتك أو الوصول الزائد إلى النظام الذي تمت مهاجمته ، كآلية احتياطية للتأمين في حالة الكشف عن قنوات الوصول الرئيسية وحجبها في البيئة التي تمت مهاجمتها.
توصيات الحماية: تأكد من تحديث خوادم الويب الخارجية بانتظام وأنه لا توجد نقاط ضعف معروفة تسمح للمهاجمين بتحميل ملف أو نص برمجي إلى الخادم مع التنفيذ اللاحق. تحقق من أن أذونات الحسابات والمجموعات التي لها حقوق إدارة الخادم لا تتطابق مع الحسابات الموجودة على الشبكة الداخلية والتي يمكن استخدامها لتسجيل الدخول إلى خادم الويب أو تشغيل shell على الويب أو تثبيته على خادم الويب. يصعب اكتشاف Web Shell بسبب إنهم لا يبدؤون الاتصالات ويمكن أن يكون جانب الخادم الخاص بهم صغيرًا وغير ضار ، على سبيل المثال ، يبدو إصدار PHP الخاص بـ China Chopper Web shell كخط:
[؟ php Eval ($ _POST ['password']) ؛]