
مدقق Python لـ CVE-2026-48842، وهو حقن SQL قبل المصادقة في إضافة virtuser_query في Roundcube Webmail. يكتشف الإصدار، ومسار الإضافة، ويتحقق من حقن SQL عبر فحص تسجيل الدخول.
مدقّق بلغة Python 3 لـ CVE-2026-48842 في Roundcube Webmail (إضافة virtuser_query الاختيارية).
هذا الـ PoC مُدرج على PoCbit — CVE-2026-48842 على pocbit.org.
عند تشغيل الـ PoC يُطبع ترويسة PoCbit؛ وتتضمن أسطر JSONL الحقلين pocbit / pocbit_page.
| المنتج | Roundcube Webmail |
| المكوّن | الإضافة المدمجة virtuser_query (بحث المستخدم/البريد/المضيف في قاعدة البيانات) |
| المتأثر | 1.6.x < 1.6.16، 1.7.x < 1.7.1 (قد تتأثر أيضًا الإصدارات الأقدم 1.4/1.5 إذا كانت الإضافة مُفعّلة — رقّع حسب التوزيعة) |
| المُصلَح | 1.6.16، 1.7.1 |
| CVSS 3.1 | 8.1 High (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H) |
| CWE | CWE-89 |
| المصادقة | لا شيء (مسار تسجيل الدخول / البحث) |
عند تهيئة virtuser_query ($config['virtuser_query'] في config.inc.php)، تُستبدل أسماء المستخدمين أو عناوين البريد داخل قوالب SQL عبر preg_replace('/%u/', $dbh->escape(...), ...). يفسّر PHP الشرطات المائلة العكسية في سلسلة الاستبدال، مما يُبطل تهريب SQL — حقن SQL قبل المصادقة (الإصلاح: استخدام str_replace).
الإشعار الأمني: تحديثات Roundcube الأمنية 2026-05-24
pip install -r requirements.txt
# Detect Roundcube + version + virtuser plugin file
python poc.py -u https://webmail.example.com --json
# Active SQLi probe (SLEEP / error heuristics on login POST)
python poc.py -u https://webmail.example.com --verify
python poc.py --list targets.example.txt --threads 20 --quiet
python poc.py --list targets.example.txt --verify --sqli-delay 5
virtuser_query على الخادم (وهي غير مُفعّلة افتراضيًا في جميع عمليات التثبيت). يُشير الـ PoC إلى مسار PHP الخاص بالإضافة عند إمكانية الوصول إليه.--verify قيم _user مُصمّمة إلى ?_task=login (لا حاجة إلى كلمة مرور صحيحة لمحاولة الحقن).virtuser_query من $config['plugins'].body="rcmail" && body="roundcube"
title="Roundcube Webmail"
للاختبار المُصرّح به فقط.