
صور مختبرية لـ nginx 1.30.0 ذات ثغرات متعمدة (CVE-2026-40701/42934/42945/42946) للبحث الأمني المعزول. للاستخدام المختبري فقط.
مجموعة من صور Docker معرضة للخطر عمدًا لدراسة الأمان في مختبر معزول. بدأت كإعادة إنتاج لثغرات nginx وتنمو لتصبح مجموعة أوسع من الصور المصممة لتكون ضعيفة (مثل DVWA).
⚠️ الأمان
هذه الصور معرضة للخطر عن قصد. إحدى ثغرات nginx (CVE-2026-42945) يتم استغلالها في البرية. قم بتشغيلها فقط على شبكة معزولة/محلية. لا تنشر أبدًا على مضيف عام، ولا تنشرها أبدًا كما لو كانت صور إنتاجية. تحمل كل صورة
lab.vulnerable=trueووصفًا يوضح ذلك.
جميعها مبنية على قاعدة مشتركة تبني nginx 1.30.0 من المصدر — آخر إصدار تأثر بهذه الثغرات (تم إصلاحها في 1.30.1 / 1.31.0).
| الدليل | الصورة | CVE | الوحدة / المجال |
|---|---|---|---|
base/ | rwils83/nginx-vuln-base:1.30.0 | — | بناء مشترك من مصدر nginx 1.30.0 |
cve-2026-42945-rewrite-lab/ | rwils83/cve-2026-42945 | CVE-2026-42945 | تجاوز سعة الكومة في وحدة rewrite (RCE) |
cve-2026-42946-scgi-uwsgi-lab/ | rwils83/cve-2026-42946 | CVE-2026-42946 | قراءة زائدة للمخزن المؤقت في scgi/uwsgi |
cve-2026-40701-resolver-lab/ | rwils83/cve-2026-40701 | CVE-2026-40701 | استخدام بعد التحرير في المحلل (OCSP) |
cve-2026-42934-charset-lab/ | rwils83/cve-2026-42934 | CVE-2026-42934 | قراءة زائدة للمخزن المؤقت في وحدة charset |
| الدليل | الصورة | ملاحظات |
|---|---|---|
dvwa-curl-lab/ | rwils83/dvwa_with_curl | DVWA مُصانة (ghcr.io/digininja/DVWA) مع curl/python3 |
يحتوي كل مجلد على README.md خاص به مع التفاصيل والمراجع.
يجب بناء قاعدة nginx أولاً (صور الثغرات تستند إليها عبر FROM):
docker build -t rwils83/nginx-vuln-base:1.30.0 ./base
docker build -t rwils83/cve-2026-42945:1.30.0 ./cve-2026-42945-rewrite-lab
docker build -t rwils83/cve-2026-42946:1.30.0 ./cve-2026-42946-scgi-uwsgi-lab
docker build -t rwils83/cve-2026-40701:1.30.0 ./cve-2026-40701-resolver-lab
docker build -t rwils83/cve-2026-42934:1.30.0 ./cve-2026-42934-charset-lab
docker build -t rwils83/dvwa_with_curl:latest ./dvwa-curl-lab
يقوم ./build_all.sh ببناء مجموعة nginx (القاعدة + 4 صور ثغرات).
تبني CI كل صورة *-lab/ عند كل طلب سحب/دفع (بناء فقط، لا دفع) لاكتشاف الأعطال قبل الدمج. النشر يتم بواسطة علامات git:
git tag v1.30.0-lab.2 && git push --tags # release the nginx images
git tag dvwa-v1 && git push --tags # release DVWA
يتطلب النشر وجود أسرار المستودع DOCKERHUB_USERNAME و DOCKERHUB_TOKEN.
| نمط العلامة | يبني ويدفع | العلامات المطبقة |
|---|
v* (مثل v1.30.0-lab.2) | صور nginx الأربعة لثغرات CVE | <version> + :latest |
dvwa-v* (مثل dvwa-v1) | dvwa_with_curl | <version> + :latest |