infoq:Spring 出现了堪比 Log4j 超大漏洞?官方回应来了

智聪说说网
智聪说说网
智聪说说网
43262
文章
0
评论
2023-02-1108:26:09 评论 10

首先是核弹级漏洞 Log4Shell,这次又是 Spring4Shell,开源软件库中的零日漏洞总是突然出现,搅动了网络安全行业从业者的神经。

自 3 月 29 日起,关于 Spring 社交网络上流传着大漏洞的消息。据一些网络安全专家介绍,这个漏洞非常严重。

图片来自程序猿 DD

默安科技创始人 &CTO 云舒在社交平台上说:我们已经准备好了一个超大的漏洞。 EXP 有网友问,有, Log4j 那么大吗?云舒回答:更大...

图片来自程序猿 DD

3 月 31 日,Spring 官官员表示,该漏洞已在10天内确认,该漏洞已注册为 CVE-2022-22965。而且,Spring 修复性的发布 Spring Framework 5.3.18 与 5.2.20 版本。

以下为 Spring 经官方回应该漏洞的文章, AI 前线翻译。

这一事件发展迅速,我们继续调查和验证更多关于这一漏洞和影响的信息。

截至 2022 年 3 月 31 日,Spring 10天漏洞已经确认,修复性已经发布 Spring Framework 5.3.18 与 5.2.20 版本。

漏洞会影响运行 JDK 9 上的 SpringMV 与 Spring WebFlux 应用程序已注册为 CVE-2022-22965。

我们将继续关注后续进展,但第一次给您带来最新消息。

tCell 特定类似的使用尝试将根据公开发布的有效载荷进行测试;如果应用程序加载了任何包含漏洞的包(例如 CVE 2022-22965),tCell 它还将提醒客户,并专注于添加特殊的目标 Spring4Shell 检测机制。

InsightAppSec 预计攻击模块也在开发中 4 月 1 日面向所有 Application Security 客户开放。面向 Application Security 更多客户指南和详细信息也将陆续公布。

我们的团队正在这样做 InsightVM 及 Nexpose 客户进行身份验证和远程漏洞检查。我们将在下一次更新中发布更具体的内容 ETA(估计到达时间)。使用 Container Security 的 InsightVM 客户可以评估受漏洞影响的客户 Spring 各容器的版本。目前还没有更好的方法来识别嵌入 WAR 影响文件 JAR 文件。

虽然 InsightIDR 这个漏洞不能直接检测,但我们提供基于行为的检测机制,以提示常见的后续攻击。

我们正在不断调查和验证更多关于这一漏洞及其影响的信息。该事件发展迅速,我们也在研究如何开发和评估漏洞管理、应用程序安全解决方案和预防控制选项。信息充足后,我们将进一步评估提供漏洞检查、攻击模块、检测和 Metasploit 模块的可行性。

虽然 Rapid7 无法直接检测此项漏洞,但我们提供基于行为的检测机制以提示常见的后续攻击活动。tCell 还将根据公开发布的有效载荷检测特定类型的使用行为。

截至 2022 年 3 月 31 日,Spring 10天漏洞已经确认,修复性已经发布 Spring Framework 5.3.18 与 5.2.20 版本。漏洞会影响运行 JDK 9 上的 SpringMV 与 Spring WebFlux 应用程序已注册为 CVE-2022-22965。

2022 年 3 月 30 ,一名以汉语为母语的研究人员 GitHub 上提交了一份概念验证代码,关于 Spring 远程代码执行漏洞的消息在框架中疯传。正是使用的 Spring 框架内 Spring Core 模块中的零日漏洞。

Spring 项目由 VMware 子公司 Spring.io 负责维护,现在已经得到了很多 Java 使用企业软件框架。提交的漏洞概念验证似乎允许未经身份验证的攻击者在目标系统上执行代码,但披露很快就被删除。

混乱的主要原因如下:

首先,这个漏洞(和概念验证)不能安装 Spring 直接使用框架后。我们稍后将解释应用程序必须使用特定函数。

其次,2022 年 3 月 29 日,Spring Cloud 也曾曝出另外一个完全不同的未经身份验证远程代码执行漏洞,致使部分社区成员将这两个问题混为一谈。

Rapid7 研究团队已确认零日漏洞的真实存在,可实现未经身份验证的远程代码执行。漏洞的概念验证也存在,但目前还不清楚哪些应用程序实际上使用了前面提到的特定函数。截至 3 月 31 日,Spring 漏洞的存在漏洞,并发布了修复性 Spring Framework 5.3.18 与 5.2.20 同时强调漏洞会影响运行 JDK 9 上的 SpringMV 与 Spring WebFlux 应用程序。

以下是已知的风险映射条件:

任何使用 5.2.20、5.3.18 及 JDK 9 或以下版本较高 Spring Framework 版本组件,被视为可能受到漏洞的影响;

任何满足上述条件并使用的条件 @RequestMapping 注释与 Plain Old Java Object (POJO)所有参数组件均被视为受漏洞影响,易于使用;

任何满足上述条件并运行的条件 Tomcat 的组件,都被认为是极有可能被利用的(这是因为现有的恶意利用代码是基于 Tomcat 的应用程序)。

这个漏洞似乎会影响使用 @RequestMapping 注释及 POJO (Plain Old Java Object)参数函数。让我们来看看我们的 Springframework MVC 入侵演示:

复制代码

这里有一个控制器(HelloWorldController),它在被加载至 Tomcat 指向中后处理

http://name/appname/rapid7的 HTTP 请求。处理请求的函数即前文提到的易受攻击函数,其中还包含一个 POJO 参数 HelloWorld。去年我们在这里方便起见 HelloWorld;在真实情况下 POJO 可能很复杂:

复制代码

整个使用过程如上所示,至少影响 4.3.0 到 5.3.15 的各个 Spring Framework 版本(我们没有 4.3.0 深入测试版本)。

如果我们编译项目,然后托管它 Tomcat 上,可使用以下内容 curl 快速利用命令。请注意,以下是在最初的概念验证中与研究人员完全相同的有效载荷(具体情况稍后介绍):

复制代码

这部分有效载荷将在 Tomcat ROOT 在目录中放置一个名字 tomcatwar.jsp、密码保护 webshell,内容如下:

复制代码

之后,攻击者可以调用相关命令。以下示例为执行 whoami 来获取 albinolobster:

Java 该版本将直接决定测试是否成功。以下示例为执行 whoami 来获取 albinolobster:

如何在照片上添加文本(如何在照片上编辑文本)

Java 该版本将直接决定测试是否成功。 OpenJDK 1.8.0_312 测试失败,但在 OpenJDK 11.0.14.1 一切顺利。

我们使用的有效载荷仅用于 Tomcat 服务器。其中使用了一种 2014 年时非常流行的技术,即通过 ClassLoader 更改 Tomcat 服务器日志记录属性。有效载荷只是将日志记录的逻辑重新定 ROOT 将相应的文件和有效载荷放置在目录中。

这只是目前发现的一种使用方式,未来可能会出现更多。我相信我们很快就会看到其他涉及恶意加载的有效载荷。

截至 2022 年 3 月 1 这个漏洞已经注册为日 CVE-2022-22965,Spring Framework 也发布了 5.3.18 与 5.2.20 解决这个问题的版本。

Spring Framework 请根据网上公开的受影响应用程序尽快更新到安全版本(详见「已知风险」部分)。对于组织用户,应整理受影响的应用程序清单,检查流程执行和应用程序日志,监控异常活动。

Spring 还在官方博客上发布了更多关于这一漏洞的。Spring DataBinder 说明文档明确指出:

……未设置允许的字段数组,可能会造成潜在的安全隐患。以 HTTP 表单的 POST 例如,恶意客户端可以提供表单上不存在的字段或属性值,以实现对应用程序的入侵。在某些情况下,攻击者可能成功在命令对象或其嵌套对象上设置非法数据。因此,我们强烈建议您 DataBinder 上指定 allwedFields 属性。

因此,修改自定义是一种可行的应对方式 Spring 应用程序中的源代码确保这些字段得到充分保护。请注意,该方法不适用于使用第三方应用程序的组织。

如果你的组织已经部署好了 Web 防火墙的应用程序(WAF),则应分析一切受到此 Spring 调整漏洞影响的应用程序 WAF 检测规则集中的字符串,防止恶意使用。

如果组织不能修复或使用上述对策,也可以基于 Spring 在应用程序系统中建模流程执行,然后监控疑似恶意使用的异常活动。发现此类活动后,应立即触发报警,并通过事件响应程序和安全自动化工具进行控制。但这种方法也有瓶子,如果建模不够全面,可能会出现漏报或误报。

2022 年 3 月 29 日 Spring 另一个不相关的漏洞在项目中被曝光,这也造成了巨大的混乱。这个漏洞是注册的 CVE-影响2022-22963 Spring Cloud Function,与 Spring Framework 没有关联。针对 CVE-2022-22963 涮,Spring 已经在 3 月 29 日发布了 3.1.7 与 3.2.3 两个修复版本。

此外,3 月 28 还有另一个漏洞 CVE-2022-22950 案件登记,修复程序也在当天发布。这种严重性是中等漏洞(可能诱发 DoS 攻击)主要影响 Spring Framework 的 5.3.0 到 5.3.16 各版本。

事态还在发酵,Spring.io 这个漏洞还没有确认。我们只能积极测试各种可能的漏洞使用方法和组合。在过渡期间,已经部署了核心 Spring Framework 我们已经验证了两种成功的缓解措施,即将其应用于关键业务应用的组织。另外,Rapid7 Labs 尚未发现此漏洞被实际利用的证据。

{n}{n}

  WAF 规则

{n}{n}

  对于已经部署 WAF 的组织,可以实施字符串过滤机制以抵御此次漏洞,具体包括"class."、"Class."、"

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,多谢。

标签:infoq:Spring 出现了堪比 Log4j 超大漏洞?官方回应来了

智聪说说网
  • 本文由 发表于 2023-02-1108:26:09
  • 转载请务必保留本文链接:https://www.zhicongwang.com/103672.html