- بواسطة x32x01 ||
واحدة من أشهر وأسهل طرق Linux Privilege Escalation اللي أي Pentester لازم يعرفها هي استغلال ملفات SUID.
الخطورة هنا إنك ممكن تبدأ بيوزر عادي جدًا 👤
وفي خطوات بسيطة توصل لصلاحيات Root كاملة 👑
خلينا نمشي بالسيناريو العملي خطوة خطوة 👇
ببساطة شديدة:
📌 لما ملف يكون عليه صلاحية SUID
أي مستخدم يشغّل الملف → يتنفذ بصلاحيات صاحب الملف مش المستخدم نفسه.
يعني لو Owner الملف هو:
أي حد يشغله هياخد صلاحيات Root أثناء التنفيذ 😈
والهدف بتاعنا: Privilege Escalation → root
نستخدم الأمر:
الأمر ده بيعمل:
✅ البحث في كل النظام
✅ استخراج الملفات اللي عليها SUID
✅ إخفاء الأخطاء
مش كل ملف ينفع للاستغلال ❌
لازم نعرف أي Binary قابل للـ Exploitation.
الفكرة بسيطة:
نقدر نستغله مباشرة.
الخيار -p بيخلي bash يحتفظ بصلاحيات Owner.
النتيجة 👇
✅ تم رفع الصلاحيات بنجاح.
هتظهر:
وده معناه إنك بقيت Root رسميًا 👑
✅ مراجعة ملفات SUID دوريًا
✅ إزالة الصلاحيات غير الضرورية:
✅ تقليل البرامج بصلاحيات root
✅ استخدام Monitoring وAudit
✅ من أهم مراحل Post Exploitation
✅ سهلة التنفيذ
✅ شائعة جدًا في اختبارات الاختراق
✅ تعتمد على Misconfiguration مش Exploit معقد
وأي Pentester محترف لازم يبدأ دايمًا بالبحث عنها أول ما يدخل النظام.
الخطورة هنا إنك ممكن تبدأ بيوزر عادي جدًا 👤
وفي خطوات بسيطة توصل لصلاحيات Root كاملة 👑
خلينا نمشي بالسيناريو العملي خطوة خطوة 👇
يعني إيه SUID أصلًا؟ 🤔
اختصار SUID = Set User IDببساطة شديدة:
📌 لما ملف يكون عليه صلاحية SUID
أي مستخدم يشغّل الملف → يتنفذ بصلاحيات صاحب الملف مش المستخدم نفسه.
يعني لو Owner الملف هو:
rootأي حد يشغله هياخد صلاحيات Root أثناء التنفيذ 😈
سيناريو الاختبار 🎯
نفترض إنك داخل على النظام بيوزر محدود:testوالهدف بتاعنا: Privilege Escalation → root
الخطوة 1: البحث عن ملفات SUID داخل النظام 🔎
أول خطوة دايمًا هي Enumeration.نستخدم الأمر:
Code:
find / -perm -u=s -type f 2>/dev/null ✅ البحث في كل النظام
✅ استخراج الملفات اللي عليها SUID
✅ إخفاء الأخطاء
الخطوة 2: تحليل النتائج 🧠
هتلاقي ملفات كتير زي: Code:
/usr/bin/passwd
/usr/bin/sudo
/usr/bin/bash
/usr/bin/find لازم نعرف أي Binary قابل للـ Exploitation.
الخطوة 3: استخدام موقع GTFOBins ⭐
أهم موقع لأي Pentester: هو GTFOBins 👉الفكرة بسيطة:
- تاخد اسم الـ Binary
- تبحث عنه في الموقع
- تشوف هل له Privilege Escalation Technique ولا لا
الخطوة 4: اكتشاف Binary قابل للاستغلال 💣
نفترض إننا لقينا:bash وعليه صلاحية SUID.نقدر نستغله مباشرة.
الخطوة 5: استغلال bash للحصول على Root ⚡
ننفذ الأمر:bash -pالخيار -p بيخلي bash يحتفظ بصلاحيات Owner.
النتيجة 👇
root@target#✅ تم رفع الصلاحيات بنجاح.
مثال تحقق سريع 🧪
بعد التنفيذ:idهتظهر:
uid=0(root) gid=0(root)وده معناه إنك بقيت Root رسميًا 👑
ليه SUID خطر جدًا؟ 🚨
لأن:- Administrator ممكن يضيفه بالغلط
- برامج قديمة تحتوي Misconfiguration
- بعض التطبيقات تحتاج SUID فعلاً
- المهاجم يستغل Binary موجود أصلًا بدون Malware
أشهر ملفات SUID القابلة للاستغلال 🔥
من التجارب الواقعية وCTF:- bash
- find
- vim
- nano
- python
- perl
- cp
- less
Code:
find . -exec /bin/sh -p \; -quit إزاي تحمي النظام من SUID Exploitation؟ 🛡️
على مسؤول النظام:✅ مراجعة ملفات SUID دوريًا
✅ إزالة الصلاحيات غير الضرورية:
Code:
chmod u-s filename ✅ استخدام Monitoring وAudit
الخلاصة 💡
تقنية SUID Privilege Escalation تعتبر:✅ من أهم مراحل Post Exploitation
✅ سهلة التنفيذ
✅ شائعة جدًا في اختبارات الاختراق
✅ تعتمد على Misconfiguration مش Exploit معقد
وأي Pentester محترف لازم يبدأ دايمًا بالبحث عنها أول ما يدخل النظام.
التعديل الأخير: