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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2023-32692-CodeIgniter4 — تطبيق مثال، عرضة لثغرة CVE-2023-32692 (حقن قواعد التحقق في إطار عمل PHP CodeIgniter) | Kitploit
أدوات/GitHubGitHub/mogwailabs/cve-2023-32692-codeigniter4
تحليل الثغرات الأمنيةتحليل الكوداستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubmogwailabs/cve-2023-32692-codeigniter4

CVE-2023-32692-CodeIgniter4

تطبيق مثال، عرضة لثغرة CVE-2023-32692 (حقن قواعد التحقق في إطار عمل PHP CodeIgniter)

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
2منذ 3 أشهرلم تتم المراجعة بعد

CVE-2023-32692 — حقن قواعد التحقق في CodeIgniter 4

CVE-2023-32692 هي ثغرة حقن برمجي في إطار عمل PHP CodeIgniter 4، وتؤثر على الإصدارات من 4.0.0 حتى 4.3.4. تم إصلاحها في الإصدار 4.3.5 (صدر في يونيو 2023). هذه بيئة تجريبية لمن يريد التجربة بها.

يمكن العثور على تفاصيل الثغرة في مدونة MOGWAI LABS.

بيئة إثبات المفهوم (PoC)

يحتوي هذا المستودع على تطبيق CodeIgniter 4 بسيط يوضح الثغرة. يأتي مع إعداد Dev Container بحيث يمكنك تشغيله مباشرة من VS Code (أو أي محرر متوافق) دون الحاجة إلى تثبيت PHP محليًا.

تستخدم حاوية Docker الأساسية PHP 8.3 وتثبّت امتداد XDebug لتمكين التصحيح. يتم تثبيت وحدات PHP الإضافية المطلوبة من إطار عمل CodeIgniter كـ "ميزات Devcontainer" محلية، بشكل أساسي لأنني أردت تجربة تلك الميزة.

يتم تضمين امتدادات VS Code التالية (جميعها مثبتة داخل الحاوية، وليس في نسختك من VS Code):

الامتدادالغرض
xdebug.php-debugدعم PHP XDebug — تنقّل خطوة بخطوة في مسار الكود المعرض للثغرة
bmewburn.vscode-intelephense-clientPHP Intelephense للتنقل في الكود
humao.rest-clientعميل HTTP لإرسال قوالب الطلبات المضمنة

التثبيت

  1. افتح المستودع في VS Code وأعد فتحه في Dev Container عند ظهور الطلب (يتطلب Docker). قد يستغرق ذلك بعض الوقت.
  2. يتم تثبيت الحزم المطلوبة تلقائيًا عبر composer عند بناء الحاوية، ولا حاجة للقيام بأي شيء هنا.
  3. انسخ قالب البيئة:
root@kitploit:~
cp env .env

بدء تشغيل التطبيق المثال

تتضمن بيئة Dev Container خادم Apache، لكن خادم التطوير المدمج في PHP كافٍ لهذا الإثبات (PoC). افتح طرفية داخل VS Code ونفّذ:

root@kitploit:~
./spark serve --host 0.0.0.0

سيكون التطبيق متاحًا على http://localhost:8080. يمكنك الوصول إليه من خارج الحاوية باستخدام متصفح الويب العادي.


التصحيح باستخدام XDebug

يقوم ملف .vscode/launch.json بتهيئة XDebug للاستماع على منفذ TCP 9003 (وهو مضبوط أيضًا في Dockerfile الخاص بـ Dev Container):

root@kitploit:~
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003
        }
    ]
}

ابدأ مستمع التصحيح قبل تشغيل خادم تطوير PHP: انقر على أيقونة "Run and Debug" في الشريط الجانبي لـ VS Code واضغط على زر التشغيل بجوار "Listen for Xdebug".

تصحيح التطبيق داخل Dev Container


الكود المعرض للثغرة

تم تنفيذ نقطة النهاية المعرضة للثغرة في app/Controllers/Poc.php. وهي تكشف عن مسارين:

المسارالوصف
POST /poc/updateنقطة نهاية معرضة للثغرة — تستخدم قواعد تحقق قائمة على السلاسل النصية
POST /poc/updateSafeنقطة نهاية آمنة — تستخدم قواعد تحقق قائمة على المصفوفات

ضع نقطة توقف في Poc::update() وتتبّع كيف يتم توسيع العنصر النائب {id} إلى سلسلة القواعد داخل محرك التحقق في CodeIgniter. الكود البرمجي ذو الصلة موجود في vendor/codeigniter4/framework/system/Validation/Validation.php.


قوالب طلبات HTTP

يحتوي مجلد http_requests/ على قوالب جاهزة للاستخدام لامتداد VS Code REST Client:

الملفالوصف
reqular_request.httpطلب شرعي أساسي — لا حقن، ويمر التحقق بشكل طبيعي

افتح أي ملف .http وانقر على Send Request أعلى كتلة الطلب لتنفيذه.

تنزيل الأداة
basic_poc.httpيحقن قواعد تحقق إضافية عبر معامل id
system_call.httpيستغل الحقن لاستدعاء system() وتنفيذ أمر نظام (touch /tmp/pwn)