طرق تعداد Linux لتصعيد الصلاحيات

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

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

لنلقِ نظرة على الطرق المُختلفة لتعداد Linux يدويًا لتصعيد الصلاحيات. تحقق من أفضل أدوات اختبار الاختراق لمُتخصصي الأمن السيبراني.

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

لماذا يُعد التعداد مهمًا لتصعيد الصلاحيات؟

يعد تصعيد الصلاحيات ، المعروف أيضًا باسم تصعيد الامتياز (EOP) ، مُكوِّنًا أساسيًا ومنهجية لاختبار الاختراق. كما يوحي الاسم ، إنها مرحلة عندما تحاول رفع امتيازاتك إلى المسؤول أو ، في أنظمة Linux ، المستخدم الرئيسي (الروت).

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

1. تعداد النظام

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

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

على سبيل المثال ، إذا كان لديك استغلال 64 بت ، فستحتاج إلى تعديله إذا كان نظامك المُستهدف يدعم فقط برمجيات 32 بت حيث يوجد فرق بين أنظمة 32 بت و 64 بت.

أيضًا ، ستُساعدك معرفة إصدار النواة على البحث عن عمليات الاستغلال على الويب في حالة اكتشاف أنَّ الإصدار قديم وعرضة للاستغلال العام. فيما يلي بعض الأوامر التي ستُساعدك في جلب معلومات النظام:

للعثور على معلومات النظام مثل إصدار النواة وإصدار نظام التشغيل وما إلى ذلك ، اكتب:

cat /etc/cpuinfo 

uname -a

إذا كنت تُريد معرفة المزيد عن بنية وحدة المعالجة المركزية ، فاستخدم الأمر lscpu:

lscpu

2. تعداد العمليات

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

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

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

يمكنك استخدام الأمر ps مع علامات aux لسرد جميع العمليات في النظام:

ps aux

تحقق من إدارة عمليات Linux: الدليل النهائي.

3. تعداد المُستخدمين والمجموعات

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

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

تتيح لك إمكانية رؤية الحسابات المُميزة تجربة مجموعات اسم المستخدم وكلمة السر المعروفة. يُمكنك طباعة محتويات ملفات /etc/passwd و /etc/group للوصول إلى قائمة المستخدمين. بدلاً من ذلك ، يمكنك أيضًا استخدام الأمر getent.

للحصول على قائمة المستخدمين على Linux:

getent passwd

للحصول على قائمة المجموعات:

getent group

4. التحقيق في الملفات الحساسة

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

يُمكن للملفات الحساسة مثل /etc/passwd و /etc/shadow تسريب الكثير من المعلومات. من /etc/shadow ، يُمكنك العثور على تجزئة كلمة مرور المستخدمين ومحاولة كسرها باستخدام أداة تكسير التجزئة مثل Hashcat أو John the Ripper.

يوجد أيضًا ملف /etc/sudoers ، والذي ، إذا كان بإمكانك تعديله بطريقة ما ، فسيسمح بتعديل أذونات sudo للمستخدمين والمجموعات.

5. التحقق من أذونات sudo

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

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

هذا مجرد مثال على العديد من مسارات الهجوم التي يُمكن أن تُفتح بمجرد توضيح أذونات sudo في نظام Linux. مثال آخر هو إساءة استخدام آلية التحميل المُسبق لمكتبة LD_PRELOAD ، والتي يُمكنك تعدادها من خلال النظر في أذونات sudo.

sudo -l

تحقق من معظم أسباب عدم احتياج Linux إلى تطبيق مكافحة فيروسات أو جدار حماية.

6. البحث عن أي استغلال في نواة Linux

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

عمليات استغلال نواة Linux مُميتة لأنها تُهاجم جوهر نظام التشغيل الذي يعمل على النظام المُستهدف. مع وجود عيب خطير في النواة ، ستتمكن من فعل أي شيء تقريبًا مع النظام.

للعثور على ثغرات النواة ، أولاً ، اكتشف إصدار النواة ثم استخدم أداة مثل searchsploit أو باستخدام Google Dorks ، ابحث عن استغلال مُناسب يؤثر على الإصدار الدقيق للنواة الذي يعمل على النظام.

7. استغلال ثنائيات SUID

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

SUID هو اختصار لـ Set Owner User ID عند التنفيذ. إنه نوع خاص من أذونات الملفات ، عند تعيينه ، يُنفذ برنامجًا بامتيازات مالكه.

إذا تم إنشاء برنامج بواسطة المستخدم الروت وتم تعيين بت SUID له ، فإنَّ البرنامج ، عند تنفيذه ، سيمتلك امتيازات الروت. كيف يُمكن إساءة استخدام SUID؟ انه سهل.

عليك تعداد جميع الثنائيات باستخدام مجموعة بت SUID ، ابحث في القائمة ، وابحث عن ثنائي لديك حق الوصول للكتابة له ، وقم بتعديل مصدره لإضافة حمولتك. يُمكنك استخدام الأمر find للبحث عن ثنائيات SUID وإعادة توجيه الإخراج القياسي إلى /dev/null:

find / -perm -4000 2>/dev/null

8. اختطاف المكتبات

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

إذا حالفك الحظ وعثرت على برنامج يعمل كـ روت ، فيُمكنك اختطاف المكتبة التي تعتمد عليها وربما الحصول على حق الوصول إلى الروت.

9. التحقيق في مُتغيِّرات البيئة واختطافها

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

مُتغيِّرات البيئة هي أنواع خاصة من المتغيرات التي ، إلى حد ما ، تُحدد كيفية عمل النظام والبرامج. مُتغير البيئة المُهم هو متغير PATH.

يُخزن موقع جميع الثنائيات القابلة للتنفيذ في النظام. يُمكنك معالجة متغير PATH وربطه بنقاط ضعف أخرى مثل اختطاف المكتبات للوصول إلى الروت.

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

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

علاوة على ذلك ، هناك أيضًا فرصة جيدة للعثور على المفاتيح السرية وكلمات السر بمجرد النظر في مُتغيِّرات البيئة. يُمكنك طباعة جميع متغيرات البيئة باستخدام الأمر env:

env

10. البحث عن الآثار في سجل Bash

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

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

11. اختطاف وظائف Cron الضعيفة

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

وظائف Cron هي ميزة مُضمَّنة وذات موارد عالية في Linux. إذا قمت بالترحيل من Windows ، فيمكن مقارنة مُهمة cron مباشرة بمهمة مُجدولة على Windows.

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

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

ls /etc/cron.d/

crontab -l -u <username>

12. إدراج الحزم القديمة

طرق تعداد Linux لتصعيد الصلاحيات - لينكس

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

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

استخدم الأمر dpkg مع العلامة -l لسرد الحزم المثبتة على الأنظمة المستندة إلى Debian- و Ubuntu:

dpkg -l

بالنسبة لأنظمة RHEL / CentOS / Fedora ، استخدم هذا الأمر لسرد الحزم المثبتة:

rpm -qa

تحقق من أسباب ارتفاع هجمات سلاسل التوريد.

أنت الآن تعرف كيفية تعداد Linux يدويًا لتصعيد الصلاحيات

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

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

زر الذهاب إلى الأعلى