目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-84177— Apache Wicket 组件标记包资源泄露漏洞

一分钟漏洞结论

影响对象
Apache Software Foundation Apache Wicket
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

Apache Wicket 中存在验证顺序错误:框架在将属性追加到文件路径以完成路径之前,先对该路径进行了验证。 具体来说, 会根据请求 URL 中的文件名与所属作用域类的包名组合成一个路径,并询问已配置的包资源守卫(package resource guard)该路径是否允许访问。随后,它将同一个路径连同样式(style)、变体(variation)和区域设置(locale)这三个属性一并传递给资源流定位器(resource stream locator)。这三个属性是从第一个查询参数的名称中解码得出的,并未出现

CVSS 6.3 · Medium
获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2026-84177 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
Apache Wicket: A component's markup is served as a package resource when its class name contains an underscore
来源: CVE Program / CVE List V5
Vulnerability Description
Incorrect behavior order in Apache Wicket: a file path is validated before the framework appends the attributes that complete it. org.apache.wicket.request.resource.PackageResource asks the configured package resource guard about a path built from the scope class' package and the file name in the request URL, and then hands that same path to the resource stream locator together with a style, a variation and a locale. Those three attributes are decoded from the name of the first query parameter and never appear in the string the guard was given. org.apache.wicket.core.util.resource.locator.ResourceNameIterator appends them to that path, each preceded by an underscore, in the order variation, style, locale, before the file extension, so the file that is opened is not the file the guard approved. org.apache.wicket.markup.html.PackageResourceGuard decides whether an HTML file is a component's markup template by looking for a class file of the same name beside it, stripping one underscore-delimited suffix at a time as it goes. HTML is on the default allow list, so that check is the only thing separating a static HTML file, which may be served, from a markup template, which may not. Asked about the name of a template, the guard refuses it correctly. Asked about a shorter name for which no class exists, it accepts, and a style supplied in the URL then completes that name into the markup template of a component class, which is written to the response. An application is affected if the simple name of any of its component classes contains an underscore and no shorter part of that name is itself a class, such as Report_v2 or Wizard_Step1; an application with no such class name is not affected. No unusual deployment, packaging or configuration is required, and running in deployment rather than development mode does not prevent it. Java naming conventions discourage underscores in class names and no module Wicket ships has one, so no framework markup is exposed; what an application exposes this way is its own. A component whose class name has no underscore is not reachable, and neither is its localized or styled markup, because the guard finds the class file under the base name and refuses the request. The attributes cannot change the file extension and cannot leave the component's package, so nothing beyond HTML files in that package is reachable. Access is read-only, and what is disclosed is developer-authored template content: component structure, developer comments, markup that is rendered only under some conditions, inline script, and the endpoints a template names. No user data, credential or session material is reachable this way. An attacker has to name a class in the target package and the component itself, and Wicket writes fully qualified class names into the URL of every package resource it renders. This issue affects Apache Wicket: from 8.0.0 through 8.19.0, from 9.0.0 through 9.24.0, from 10.0.0 through 10.11.0. Users of Apache Wicket 7.x or older, which are no longer supported, should upgrade to a supported version. Users are recommended to upgrade to version 8.20.0, 9.25.0 or 10.12.0, which fix the issue.
来源: CVE Program / CVE List V5
CVSS Information
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
来源: CVE Program / CVE List V5
Vulnerability Type
不正确的行为次序:过早验证
来源: CVE Program / CVE List V5

受影响产品

厂商 产品 影响版本 CPE 订阅
Apache Software Foundation Apache Wicket 8.0.0 ~ 8.19.0 -

二、漏洞 CVE-2026-84177 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2026-84177 的情报信息

请登录查看更多情报信息。

CVE-2026-84177 其他参考 (1)

同批安全公告 · Apache Software Foundation · 2026-11-01 · 共 19 条

CVE-2026-83594 8.3 HIGH Apache Wicket 文件上传资源字段远程代码执行漏洞
CVE-2026-84170 8.3 HIGH Apache Wicket 文件上传限制未执行漏洞
CVE-2026-95863 7.6 HIGH Apache Wicket 组件 ID 跨站脚本 (XSS) 漏洞
CVE-2026-82956 7.6 HIGH Apache Wicket AjaxNewWindowNotifyingBehavior XSS 漏洞
CVE-2026-111089 7.6 HIGH Apache Wicket 跨站脚本 (XSS) 漏洞
CVE-2026-84231 7.4 HIGH Apache Wicket 外部链接模型 URL XSS 漏洞
CVE-2026-83559 7.4 HIGH Apache Wicket 跨站脚本漏洞
CVE-2026-83539 7.4 HIGH Apache Wicket 跨站脚本漏洞
CVE-2026-82840 7.2 HIGH Apache Wicket 会话 ID 未更新漏洞
CVE-2026-82704 6.9 MEDIUM Apache Wicket 任意对象实例化漏洞
CVE-2026-82557 6.9 MEDIUM Apache Wicket 表单提交组件越权执行漏洞
CVE-2026-84172 6.3 MEDIUM Apache Wicket 包资源服务远程代码执行漏洞
CVE-2026-82705 6.3 MEDIUM Apache Wicket 资源授权绕过漏洞
CVE-2026-82115 6.3 MEDIUM Apache Wicket WebSocket 授权绕过漏洞
CVE-2026-87718 2.3 LOW Apache Wicket 内容安全策略头遗漏漏洞
CVE-2026-82559 2.3 LOW Apache Wicket WebSocket 会话快照跨请求漏洞
CVE-2026-82558 2.3 LOW Apache Wicket 远程代码执行漏洞
CVE-2026-82898 2.1 LOW Apache Wicket 登录墙跨域事件重放漏洞

IV. Related Vulnerabilities