
PoC وتوثيق لـ CVE-2026-7275: مستودع Google Drive في Moodle (repository_googledocs) — اجتياز المسار / كتابة ملفات عشوائية يمكن أن تؤدي إلى RCE (تنفيذ الكود عن بُعد) في إصدارات Moodle غير المصححة.
PoC وتوثيق لـ CVE-2026-7275: مستودع Google Drive في Moodle (repository_googledocs) — Path Traversal / كتابة ملفات تعسفية (Arbitrary File Write) يمكن أن تؤدي إلى RCE في إصدارات Moodle غير المصححة.
إخلاء مسؤولية: مخصص فقط للبحث الأمني المصرح به، والتدقيق، والتعليم الدفاعي. لا تستخدمه على أي نظام دون إذن كتابي.
| الحقل | القيمة |
|---|---|
| CVE | CVE-2026-7275 |
| النشرة الأمنية | MSA-26-0006 |
| المتتبع | MDL-88423 |
| المكوّن | repository_googledocs |
| CWE | CWE-22 (Path Traversal) |
| الخطورة | حرجة (CVSS ~9.1) |
| المتأثر | Moodle 5.1.0–5.1.3, 5.0.0–5.0.6, 4.5.0–4.5.10 |
| تم الإصلاح في | 5.1.4, 5.0.7, 4.5.11 |
يقوم مكوّن Google Drive في Moodle بتنزيل الملفات من Google API باستخدام بيانات اسم الملف ($originalfile->name). قبل التصحيح، كان هذا الاسم يُمرَّر إلى prepare_file() بدون تعقيم، بحيث يمكن لحمولة مثل ../../../../public/shell.php كتابة ملفات خارج دليل temp المؤقت → احتمال حدوث RCE إذا كان webroot ينفّذ PHP.
لا توجد حاجة لمعرفة المسار المطلق — يكفي traversal نسبي (../ متكرر) من مجلد temp العشوائي.
├── README.md ← ringkasan (file ini)
├── CONTRIBUTORS.md ← 0xNuts + Cursor
├── EXPLOIT.md ← attack chain, payload, prerequisites
├── PATCH.md ← analisis patch & mitigasi
└── poc/
└── demo_path_traversal.py ← demo lokal pre-patch vs post-patch
python poc/demo_path_traversal.py
يُظهر المخرج المسار ESCAPE (قبل التصحيح) مقابل contained (بعد التصحيح).
// public/repository/lib.php — prepare_file()
return sprintf('%s/%s', make_request_directory(), clean_param($filename, PARAM_FILE));
التفاصيل الكاملة: PATCH.md
| 0xNuts | @ExDev994 — باحث رئيسي، PoC، توثيق |
| Cursor | cursor.com — باحث مشارك، تحليل ثابت، كتابة تفاصيل الاستغلال والتصحيح |
التفاصيل: CONTRIBUTORS.md
/*
* CVE-2026-7275 — break to understand, patch to defend.
* Contributors: 0xNuts (@ExDev994) + Cursor
*/
| المتطلب | التفاصيل |
|---|
| حساب Moodle | مستخدم مُصادَق عليه |
| الصلاحية | repository/googledocs:view |
| OAuth | Google Drive مرتبط بحساب مستخدم Moodle |
| المكوّن الإضافي | repository_googledocs مفعّل |
| الإصدار | غير مصحح (< 5.1.4 / < 5.0.7 / < 4.5.11) |