
عرض توضيحي لـ CVE-2025-29927 لصف البرمجة الآمنة
هذا عرض توضيحي لـ CVE-2025-29927، وهي ثغرة أمنية خطيرة في Next.js تسمح بتجاوز البرمجية الوسيطة (middleware) باستخدام ترويسة معينة.
كان الهدف من الترويسة x-middleware-subrequest منع حلقات التكرار اللانهائية في البرمجية الوسيطة. في كل مرة يصل فيها الطلب إلى البرمجية الوسيطة، تُضاف القيمة middleware إلى هذه الترويسة، وإذا أُضيفت 5 مرات، فإن البرمجية الوسيطة تسمح بمرور الطلب. إرسال طلب بالقيمة middleware:middleware:middleware:middleware:middleware سيسمح بتجاوز البرمجية الوسيطة.
بعد استنساخ المستودع وبناء المشروع، شغّل خادم التطوير:
npm run dev
يمكنك الوصول إلى التطبيق من متصفحك باستخدام الرابط http://localhost:3000.
الهدف من هذا التطبيق هو الوصول إلى صفحة /cool. يؤدي زر الإرسال إلى هذه الصفحة، لكن يتم اعتراض الطلب بواسطة البرمجية الوسيطة وإعادة توجيهه إلى /uncool.
الآن يمكننا إرسال الطلب نفسه ولكن مع ترويسة مصمّمة، وستسمح لنا البرمجية الوسيطة بالمرور إلى صفحة /cool. يمكن فعل ذلك باستخدام أدوات مطوّري المتصفح.
