ClipBucket v5易受SQL注入攻击CVE-2026-21875
ClipBucket v5 是 MacWarrior 社区维护的开源 PHP 视频共享 CMS,以 YouTube 克隆站快速搭建为核心,能够兼容 PHP 8.x/MySQL 9+。
一、基本情况
ClipBucket v5 开源视频共享平台,以社区驱动的方式延续并升级了原 ClipBucket 的核心能力,通过技术栈更新、功能增强与安全加固。

ClipBucket v5 强化视频处理、社交互动与安全合规,支持 UHD/HLS/Chromecast,集成 AI 内容审核与 TMDB,快速部署私有视频平台。
栋科技漏洞库关注到 ClipBucket v5 受影响版本中存在的安全漏洞,该漏洞现在已经被追踪为CVE-2026-21875,漏洞CVSS 3.1评分9.8。
二、漏洞分析
CVE-2026-21875是 ClipBucket v5 版本5.5.2-#187及以下版本中的漏洞,攻击者可利用该漏洞在频道内的添加评论区域执行盲SQL注入。
由于通道内的添加评论部分存在盲注SQL漏洞, ClipBucket v5默认配置允许匿名评论,因此漏洞可以在无需身份验证的情况下被利用。
在频道内添加评论时,会向/actions/ajax.php端点发送一个POST请求。
POST请求中的obj_id参数被用于upload/includes/classes/user.class.php文件中的user_exists函数作为$id参数。
然后,它在upload/includes/classes/db.class.php文件的count函数中使用。
$id参数未经验证或清理就直接拼接到查询中,用户提供的输入如"1'"或"1=1--"等可用于触发注入。
/* upload/includes/classes/user.class.php (Lines 1772 - 1779) */
function user_exists($id, $global = false): bool
{
if (is_numeric($id)) {
$field = 'userid';
} else {
$field = 'username';
}
$result = Clipbucket_db::getInstance()->count(tbl($this->dbtbl['users']), 'userid', $field.'=\'' . $id . '\'', '',60);
然后,在upload/includes/classes/db.class.php文件的count函数中使用它。
/* upload/includes/classes/db.class.php (Lines 192-198)
function count($tbl, $fields = '*', $cond = false, $ep = '',$cached_time = -1, $cached_key = '')
{
$condition = '';
if ($cond) {
$condition = ' WHERE ' . $cond;
}
$query = 'SELECT COUNT(' . $fields . ') FROM ' . $tbl . $condition . $ep;
使其易受SQL注入攻击,因为$id参数未经验证或净化就被直接拼接到了查询语句中,而用户提供的输入(如1'或1=1--)可用于触发注入。
三、POC概念验证
1、以下curl请求将触发SQL注入:
管理员已设置登录后刷新可查看2、错误响应:

注入式查询返回true:
<

注入式查询返回false:

3、该响应不会返回SQL查询的输出。然而,它仍然可以用来推断查询是否返回了数据,从而构成一种基于布尔值的盲注SQL攻击。
4、影响
攻击者可以从数据库中窃取敏感信息。
通过盲注SQL技术来推断数据库行为
如果启用了匿名评论(默认设置),则无需身份验证即可利用
如果禁用匿名评论,则需要经过身份验证的用户
四、影响范围
ClipBucket v5 <= 5.5.2
五、修复建议
无
六、参考链接
管理员已设置登录后刷新可查看