
إثبات مفهوم لاستغلال CVE-2025-38089 الذي يطلق عن بُعد إلغاء مرجعية مؤشر فارغ في نواة خوادم NFS عبر طلبات RPC منسقة.
إثبات المفهوم لاستغلال NFSundown (CVE-2025-38089). يمكنه عن بُعد تحفيز تعطل نواة (kernel crash) في خادم NFS.
يمكن لمهاجم عن بُعد تحفيز إلغاء مرجعية مؤشر فارغ (null pointer dereference) في النواة وتعطيلها عن طريق إرسال طلب RPC مصمم خصيصًا. يحدث هذا بسبب معالجة غير صحيحة لمؤشر rqstp->rq_accept_statp في مسار كود SUNRPC، مما يسمح له بالبقاء فارغًا (NULL) ويتم إلغاء مرجعيته في فروع معالجة الأخطاء. في بعض الظروف (عندما يكون كل خيط خادم قد قبل اتصالاً مرة واحدة على الأقل)، قد يؤدي ذلك أيضًا إلى استعمال بعد التحرير (use-after-free). تم تخصيص الثغرة الأمنية الآن بـ CVE-2025-38089.
poc.py حسب الحاجة، ثم قم بتشغيل الأمر التاليiptables -A OUTPUT -p tcp --tcp-flags RST RST -j DROP # إسقاط حزم RST القادمة من خادم الضحية
python poc.py
أود أن أشكر @FFreestanding على المساعدة في إعادة إنتاج الخلل وتطوير إثبات المفهوم.
يُقدَّم كود إثبات المفهوم (PoC) هذا للأغراض التعليمية والبحثية فقط.
يُرجى استخدام هذا الكود بمسؤولية وفقط على الأنظمة التي تمتلكها أو لديك إذن صريح لاختبارها.
المؤلفون والمساهمون ليسوا مسؤولين عن أي سوء استخدام أو ضرر ناتج عن هذا الكود.