
نص برمجي لتعداد Linux المحلي يحدد نواقل تصعيد الامتيازات بما في ذلك سوء التهيئة، الملفات القابلة للكتابة عالميًا، كلمات المرور بنص واضح، والثغرات القابلة للاستغلال لتقييمات الأمان والتحضير لـ CTF.
تم تصميم هذا السكريبت لتنفيذه محلياً على جهاز لينكس لحصر معلومات النظام الأساسية والبحث عن متجهات تصعيد الصلاحيات الشائعة مثل الملفات القابلة للكتابة عالمياً، والإعدادات الخاطئة، وكلمات المرور النصية الصريحة، والثغرات القابلة للاستغلال.
يهدف Linuxprivchecker إلى تحديد المجالات المحتملة للتحقيق فيها بشكل أعمق، وليس توفير إجراء مباشر أو استغلال. هذا لمساعدة المستخدمين على تعلم كيفية عمل هذه التصعيدات بشكل أكبر والحفاظ على توافقها مع القواعد المحددة للاستغلال الذاتي في اختبارات OSCP وHTB وغيرها من مسابقات CTF والامتحانات.
سنبذل قصارى جهدنا لإضافة معلومات ومراجع إضافية حيثما أمكن. بوصفي المطور الحالي، أخطط أيضاً لمرافقة الإضافات الجديدة بمقالة على مدونتي (hackersvanguard.com) لشرح كل مجال محتمل لتصعيد الصلاحيات والمعايير المطلوبة له.
لتشغيله على أنظمة بايثون >2.6 القديمة، ما عليك سوى الحصول على السكريبت الشامل بلغة بايثون وتشغيله.
wget https://raw.githubusercontent.com/sleventyeleven/linuxprivchecker/master/linuxprivchecker.py
python linuxprivchecker.py -w -o linuxprivchecker.log
حالياً، يعتبر Linuxprivchecker لإصدار بايثون 3.X إصداراً تجريبياً مستقراً. قد تحدث مشكلات مع السكريبت وقد يفوت بالتأكيد بعض الثغرات المحتملة (يرجى فتح مشكلة أو طلب دمج).
لتشغيل الإصدار المخصص لبايثون 3، استخدم pip ببساطة.
pip install linuxprivchecker
ثم شغله عبر سطر الأوامر إذا كانت runpy متاحة.
linuxprivchecker -w -o linuxprivchecker.log
أو إذا فشلت runpy في إضافة السكريبت إلى مسارك
python3 -m linuxprivchecker -w -o linuxprivchecker.log
إذا كان النظام الذي تختبره يحتوي على بايثون 2.6 أو أعلى و/أو argparser مثبتاً، يمكنك استخدام الخيارات التالية. إذا لم يعمل استيراد argparser، فسيتم تشغيل جميع الفحوصات ولن يتم كتابة أي ملف سجل. ومع ذلك، يمكنك استخدام إعادة توجيه الطرفية لإنشاء سجل، مثل: 'python linuxprivchecker.py > linuxprivchecker.log'.
usage: linuxprivchecker.py [-h] [-s] [-w] [-o OUTFILE]
محاولة جمع معلومات النظام والعثور على ثغرات محتملة
الوسائط الاختيارية: -h, --help إظهار رسالة المساعدة هذه والخروج
-s, --searches تخطي عمليات البحث المستهلكة للوقت أو الموارد
-w, --write كتابة ملف سجل، يمكن استخدامه مع -0 لتحديد الاسم/الموقع
-o OUTFILE, --outfile OUTFILE الملف الذي سيتم كتابة النتائج فيه (يجب أن يكون قابلاً للكتابة للمستخدم الحالي)
تحذير
يأتي هذا السكريبت كما هو دون أي ضمان للوظائف أو الدقة. لا توجد خطط لدي للحفاظ على التحديثات، لم أكتبه ليكون فعالاً وفي بعض الحالات قد تجد أن الدوال لا تعطي النتائج المرجوة. على سبيل المثال، الدالة التي تربط الحزم بالعمليات الجارية تعتمد على كلمات مفتاحية ولن تكون دقيقة دائماً. كذلك، قائمة الثغرات المضمنة في هذه الدالة تحتاج إلى تحديث دوري. لا تتردد في تغييره أو تحسينه بأي طريقة تراها مناسبة.
أنت حر في تعديل و/أو توزيع هذا السكريبت كما تشاء. أطلب فقط أن تحتفظ بإسناد المؤلف الأصلي وألا تحاول بيعه أو دمجه في أي عرض تجاري (وكأنه يساوي شيئاً على أي حال :)