Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
chyrp-lite-rce-poc — CVE-2026-53767 + CVE-2026-53768 - RCE بعد المصادقة في Chyrp Lite ≤ 2026.01 عبر تجاوز قائمة الحظر uploads_path وعدم التحقق من الامتداد | Kitploit
أدوات/GitHubGitHub/iltosec/chyrp-lite-rce-poc
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبما بعد الاستغلالأمن الويبالتعلم والتعليمتطوير الحمولات
GitHubiltosec/chyrp-lite-rce-poc

chyrp-lite-rce-poc

CVE-2026-53767 + CVE-2026-53768 - RCE بعد المصادقة في Chyrp Lite ≤ 2026.01 عبر تجاوز قائمة الحظر uploads_path وعدم التحقق من الامتداد

عرض المستودع
8منذ 3 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة

chyrp-lite-rce-poc

CVE-2026-53767 + CVE-2026-53768 - تنفيذ أكواد عن بُعد (RCE) موثَّق في Chyrp Lite ≤ 2026.01 ("Iriomote")

الهجوم المتسلسل: تجاوز قائمة حظر uploads_path (CVE-2026-53768) + غياب التحقق من امتداد الملف في admin_update_upload() (CVE-2026-53767) → تنفيذ أكواد عن بُعد بصلاحيات www-data


نظرة عامة

تُعد Chyrp Lite ≤ 2026.01 عرضة لسلسلة تنفيذ أكواد عن بُعد (RCE) موثَّقة، يمكن استغلالها من قبل أي مستخدم يمتلك صلاحيات change_settings وedit_upload (الافتراضي: المسؤول).

CVECVE-2026-53767 · CVE-2026-53768
CVSS9.1 حرج (AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H)
المتأثرxenocrat/chyrp-lite ≤ 2026.01
التصحيحcommit 1489dc9
النشرات الأمنيةGHSA-8h86-c24h-5jp3 · GHSA-r9w7-5h94-wq5x
المُبلِّغiltosec

الاستخدام

python chyrp_rce_poc.py -h

usage: chyrp_rce_poc.py [-h] -u URL -U USERNAME -P PASSWORD [-c CMD] [-i]
                         [--config CONFIG] [--restore RESTORE]

تشغيل استطلاع افتراضي

python chyrp_rce_poc.py -u http://127.0.0.1/chyrp -U admin -P 'fJ945@5:3s8v+X:'   

أمر واحد

python chyrp_rce_poc.py -u http://127.0.0.1/chyrp -U admin -P 'fJ945@5:3s8v+X:' -c 'cat /etc/passwd'
image

صدفة تفاعلية

python chyrp_rce_poc.py -u http://127.0.0.1/chyrp -U admin -P 'fJ945@5:3s8v+X:' -i
image

سلسلة الهجوم

الخطوة 1 - المصادقة

الخطوة 2 - إعادة توجيه uploads_path إلى tools/ (غير مدرج في قائمة الحظر)

image

image

الخطوة 3 - استبدال tools/docgen.php (لا يوجد فحص امتداد عند الاستبدال)

image

image

الخطوة 4 - التنفيذ

http://127.0.0.1/chyrp/tools/docgen.php?cmd=id

image

CVE-2026-53768 - قائمة حظر uploads_path غير مكتملة

يتحقق includes/controller/Admin.php من uploads_path مقابل قائمة حظر مكتوبة بشكل ثابت (hardcoded):

admin | ajax | feathers | fonts | includes | modules | themes

دليل tools/ - الذي يأتي مع Chyrp Lite ويحتوي على ملفات .php قابلة للتنفيذ (docgen.php، gettext.php، triggers.php) - غير مدرج. إرسال uploads_path=tools يمر عبر التحقق ويُحفظ في config.json.php.

CVE-2026-53767 - غياب التحقق من الامتداد في admin_update_upload()

تتحقق upload_tester() (includes/helpers.php) فقط من رمز خطأ رفع PHP وحجم الملف - ولا تجري أي تحقق من الامتداد على الملف البديل. يُؤخذ اسم الملف الهدف من $_POST['file'] ويُحلَّل مقابل مسار uploads_path الحالي. وبما أن tools/docgen.php موجود مسبقاً (ما يحقق فحص is_file())، يتم استبداله بصمت بمحتوى عشوائي.


ملاحظة: يشير علم --config إلى config.json.php لحساب رمز CSRF. إذا لم يكن الملف قابلاً للقراءة محلياً، يلجأ السكربت تلقائياً إلى استخراج الرمز من استجابة HTML.


المتطلبات

  • Python 3.x (stdlib فقط - لا تبعيات خارجية)
  • بيانات اعتماد المسؤول لمثيل Chyrp Lite المستهدف

الإصلاح

حدّث إلى إصدار يتضمن commit 1489dc9 أو أحدث.

تم تطبيق إصلاحين مستقلين:

الإصلاح 1 - إضافة tools (وlicenses) إلى قائمة حظر uploads_path:

// Before
"/^$qdir((admin|ajax|feathers|fonts|includes|modules|themes)$qdir|$)/"

// After
"/^$qdir((admin|ajax|feathers|fonts|includes|licenses|modules|themes|tools)$qdir|$)/"

الإصلاح 2 - التحقق من امتداد الملف المُرفع مقابل القائمة البيضاء في admin_update_upload():

$new_extension = strtolower(pathinfo($_FILES['upload']['name'], PATHINFO_EXTENSION));
$whitelist = upload_filter_whitelist();
if (!in_array($new_extension, $whitelist))
    error(__("Error"), __("File type is not allowed."), code: 422);

المراجع

  • GHSA-8h86-c24h-5jp3 - غياب التحقق من الامتداد
  • GHSA-r9w7-5h94-wq5x - قائمة حظر غير مكتملة
  • commit الإصلاح 1489dc9
  • iltosec.com - الشرح الكامل

إخلاء المسؤولية

يُطرح إثبات المفهوم (PoC) هذا للأغراض التعليمية والبحثية فقط. استخدمه فقط ضد الأنظمة التي تملكها أو لديك إذن كتابي صريح لاختبارها. المؤلف غير مسؤول عن أي إساءة استخدام.

تنزيل الأداة