CVE-2026-18783 安全公告:TREX MES 的 /api/GetDataJSON3 接口缺少服务端身份验证,允许未经身份验证的数据查询和任意 SQL 执行。
TREX MES 是一款用于从生产现场采集和管理数据的商业制造执行系统 (MES) / 工业 4.0 平台。在研究中发现,发送至 /api/GetDataJSON3 API 端点的请求即使不包含有效的 Authorization: Bearer 令牌信息,也能被成功处理。该端点并未以 401 Unauthorized 或 403 Forbidden 拒绝不含令牌的请求,而是对其加以处理并生成响应。这表明相关 API 服务中的服务器端身份验证控制缺失或配置错误。
任何未经身份验证、能够通过网络访问该服务的攻击者都可以:
同一端点会直接在执行数据库中运行通过 sql 参数发送的内容。身份验证的缺失消除了该任意 SQL 执行漏洞的“有效会话”前提条件;该漏洞在 CVSS 向量中的 PR:L 组件被更新为 PR:N,基础评分从 9.9 上升至 10.0。
由于受影响的系统是一个制造执行平台,生产与质量数据可在未经身份验证的情况下被查询,这带来了超出常规 IT 影响的商业机密泄露和运营风险。
身份验证检查仅由应用程序前端实施;令牌在客户端被添加到请求中,而在服务器端并未强制要求其存在和有效性。当直接调用该端点时,此检查完全失效,请求会被处理。此行为已在测试环境中得到验证。
CWE-306 — 关键功能缺少身份验证 CWE-862 — 缺少授权 CWE-425 — 直接请求访问(强制浏览) CWE-602 — 服务器端安全在客户端强制执行
高 — CVSS 3.1 基础评分 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N)
该评分基于对发现本身的单独评估(未授权数据查询)。当与同一端点中的任意 SQL 执行漏洞一并考虑时,影响为严重。
trex MES v.6.07.17.00090 及更早版本
TrexDCAS MES v.6.05.14.00074 及更早版本
/api/GetDataJSON3 — Web 服务层中的请求身份验证检查
在厂商修复发布之前,建议运营人员采取以下措施:
在反向代理、WAF 或 IIS URL Authorization 层,拒绝未携带有效 Authorization 头到达 /api/GetDataJSON3 端点的请求。不仅应验证该头的存在,还应验证其签名和有效期;否则,通过发送任意值即可绕过该检查。
将该端点的访问限制为仅允许需要访问的生产客户端 IP 地址;关闭来自企业用户网络和互联网的访问。
假设该漏洞不仅限于单个端点,在不发送令牌的情况下测试 /api/ 下的所有端点(包括 GetDataJSONCrypto3);将其他在无身份验证情况下返回响应的端点纳入同一规则集。
为未携带 Authorization 头到达该端点的请求定义 SIEM 告警,并回溯检查 Web 服务器日志中是否存在此模式的过往访问。
作为永久解决方案,厂商应在服务器端强制实施身份验证,将此检查通过覆盖所有端点且默认拒绝的集中式层(全局过滤器 / 中间件)实施,而非逐个端点添加控制;在身份验证之后还应检查会话持有者对所请求数据的访问权限,并以 401/403 拒绝未授权请求,且不在响应正文中泄露内部结构信息。
CVE-2026-18783
Hasan Hüseyin UYAR – Netlore Security
| 日期 | 事件 |
|---|---|
| 2026-07-30 | 在一次经授权的渗透测试中发现并验证了该漏洞 |
| 2026-08-04 | 分配了 CVE-2026-18783 编号。 |
| 2026-09-30 | 发布于 https://www.cve.org/CVERecord?id=CVE-2026-18783。 |