针对 Roundcube Webmail(可选 virtuser_query 插件)中 CVE-2026-48842 的 Python 3 检测工具。
此 PoC 已收录于 PoCbit — pocbit.org 上的 CVE-2026-48842。
运行该 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 高危(AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H) |
| CWE | CWE-89 |
| 认证 | 无(登录/查询路径) |
当配置了 virtuser_query(config.inc.php 中的 $config['virtuser_query'])时,用户名或邮箱会通过 preg_replace('/%u/', $dbh->escape(...), ...) 被替换进 SQL 模板。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(并非所有安装默认开启)。当插件 PHP 路径可访问时,PoC 会将其标记出来。--verify 会向 ?_task=login 发送构造的 _user 值(注入尝试无需有效密码)。$config['plugins'] 中移除 virtuser_query。body="rcmail" && body="roundcube"
title="Roundcube Webmail"
仅限授权测试。