Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-8239 — 关于 Concrete CMS 中 IDOR 漏洞的安全分析报告:get_rating 端点因缺少授权而暴露对话评分,涵盖根本原因、攻击场景及修复方案。 | Kitploit
工具/GitHubGitHub/aj2108/cve-2026-8239
身份验证与授权漏洞分析Web应用程序漏洞利用信息收集Web安全学习与教育
GitHubaj2108/cve-2026-8239

CVE-2026-8239

关于 Concrete CMS 中 IDOR 漏洞的安全分析报告:get_rating 端点因缺少授权而暴露对话评分,涵盖根本原因、攻击场景及修复方案。

查看仓库
511个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-8239

CVE-2026-8239 是一个不安全的直接对象引用(IDOR)漏洞,影响 Concrete CMS 9.5.0 及更早版本。该漏洞存在于 /ccm/frontend/conversations/get_rating 端点中,攻击者通过提供任意消息 ID,即可判断会话消息是否存在并获取其评分。该端点在返回所请求的信息之前未能执行适当的授权检查。

受影响软件

产品:Concrete CMS 受影响版本:9.5.0 及更早版本 修复版本:9.5.1 端点:/ccm/frontend/conversations/get_rating 漏洞类型 类别:不安全的直接对象引用(IDOR) CWE-862:缺少授权

根本原因

该端点接受来自客户端的消息 ID,并在未验证请求用户是否有权访问该消息的情况下返回相关信息。

应用程序未验证所有权或权限,而是信任用户提供的标识符。

从概念上讲:

用户提供 messageId ↓ 服务器定位消息 ↓ 无授权检查 ↓ 返回消息评分

由于缺少授权检查,攻击者可以枚举消息 ID,并获取其本应无法访问的会话信息。

攻击场景

假设应用程序使用数字 ID 存储会话消息。

合法请求可能引用:

GET /ccm/frontend/conversations/get_rating?messageId=125

攻击者只需修改标识符:

GET /ccm/frontend/conversations/get_rating?messageId=126

如果应用程序返回评分而不是 403 Forbidden 或 404 Not Found,攻击者即可确认该消息存在并获取其评分信息。

这是一个典型的 IDOR 漏洞,因为只有对象标识符发生变化——无需恶意载荷或注入命令。

影响

攻击者可以:

枚举有效的会话消息 ID。 确认特定消息是否存在。 检索其无权访问的消息的评分。 获取有关私人会话的有限信息。

该漏洞主要影响机密性,因为未经授权的用户可以访问本应受保护的信息。

严重性

指标 评分 CVSS v3.1 (NVD) 5.3 – 中危 CVSS v4.0 (Concrete CMS CNA) 6.3 – 中危

概念性漏洞代码

厂商尚未发布实际的漏洞源代码。以下示例仅用于说明漏洞模式。

$messageId = $_GET['messageId'];

$message = $conversationRepository->findMessage($messageId);

// No authorization check return response()->json([ 'rating' => $message->getRating() ]);

漏洞成因

应用程序仅根据用户提供的 ID 检索消息并立即返回其评分,从不检查当前用户是否有权访问该消息。

修复后的代码(概念性)

$messageId = $_GET['messageId'];

$message = $conversationRepository->findMessage($messageId);

if (!$authorizationService->canViewMessage($currentUser, $message)) { return response()->json([ 'error' => 'Access denied.' ], 403); }

return response()->json([ 'rating' => $message->getRating() ]);

修复为何有效

修复后的实现会在返回评分之前,先验证已认证用户是否有权限查看所请求的消息。即使攻击者更改了 messageId,服务器也会强制实施授权,并以 HTTP 403 Forbidden 响应拒绝未授权的请求。这通过确保用户只能访问其被允许查看的资源来防止 IDOR。

下载工具