找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4303

积分

0

好友

559

主题
发表于 3 小时前 | 查看: 3| 回复: 0

最近 Apache 官方一口气发布了五个安全公告(S2-070 到 S2-074),对应 CVE-2026-73631 到 CVE-2026-73635。很多人一看到又是 Struts 漏洞,第一反应可能是“又来远程代码执行了?”,但这次还真不一样,主要问题集中在拒绝服务(DoS)上。

简单来说,核心问题只有一个:框架在处理某些输入时,没有对资源消耗做出有效限制。

先看最关键的三个。

JSON 请求体无限读取(CVE-2026-73633)

如果你用了 JSON 插件,并且开启了从 JSON body 直接填充 Action 的功能,框架就会把整个请求体读进内存。问题在于,这个读取过程并没有真正的上限控制。之前配置的 JSON 长度限制居然管不住这个读取动作。结果就是,攻击者随便丢一个特别大的 JSON 包过来,服务器内存直接被吃光,其他正常请求全挂。

CSP 违规报告无限读取(CVE-2026-73634)

有些应用会专门开一个接口,用来收集浏览器发来的 Content Security Policy 违规报告。遇到的问题一模一样——框架把报告内容原样读进内存,没有设置上限。一个超大报告就能把堆内存打满。

本地化文本缓存无限膨胀(CVE-2026-73635)

如果没有固定配置 locale,框架会根据请求里的 locale 来查本地化文本,并且把结果缓存起来。攻击者不断换不同的 locale 发起请求,缓存就会一直涨,最后内存耗尽。

另外两个是 JSON 插件里的共享状态问题(CVE-2026-73631、CVE-2026-73632),主要影响 7.2.1 版本,可能导致数据串会话或者解析状态混乱,严重性相对低一点,但也建议一并修复。

这几个漏洞的共同特点很明显:不是逻辑绕过,也不是代码执行,而是资源消耗没有边界。在云环境和容器化部署越来越普遍的当下,内存一旦被打爆,服务就直接不可用,影响面其实不小。

影响范围覆盖挺广:从老旧的 2.x、2.5.x,到 6.0.0~6.10.0,再到 7.0.0~7.2.1 全都中招。用了 JSON 插件或者开启了相关功能的应用,风险会更高。

官方已经给出了解决方案:直接升级到 Struts 7.3.0,或者 6.x 分支升级到 6.11.0。这两个版本都已经修复了上述问题。

如果暂时升不了,也可以在反向代理或 Servlet 容器层面对相关接口做请求体大小限制,至少能挡一挡最明显的大包攻击。但治本还是得靠升级。

Struts 这些年漏洞确实不少,但这次提醒我们一个很实际的点:很多时候真正能把服务搞瘫的,不一定是高危 RCE,而是这种看起来“不起眼”的资源控制缺失。

建议大家尽快检查一下自己项目用的 Struts 版本,以及是否启用了 JSON 插件和 CSP 报告收集功能。有问题就升级。




上一篇:种子轮到A轮工程团队管理反模式:缺的不是管理,是好工程师
下一篇:IoTDB 2.0.10 未授权RCE:管道与内部RPC认证绕过
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-8-17 05:38 , Processed in 0.971627 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表