天青竹智语提供抵御Spring漏洞业务防护解决方案

时间 :  2022年04月02日  来源:  安天


1.漏洞描述


Spring框架(Framework)是一个开源的轻量级J2EE应用程序开发框架,提供了IOC、AOP及MVC等功能,解决了程序人员在开发中遇到的常见问题,提高了应用程序开发便捷度和软件系统构建效率。

2022年3月31日,CNVD平台发布了Spring存在远程命令执行的安全公告(CNTA-2022-0009)。公告指出,“由于Spring框架存在处理流程缺陷,攻击者可在远程条件下,实现对目标主机的后门文件写入和配置修改,继而通过后门文件访问获得目标主机权限。使用Spring框架或衍生框架构建网站等应用,且同时使用JDK版本在9及以上版本的,易受此漏洞攻击影响。”

CNVD对该漏洞的综合评级为“高危”。

2.漏洞利用过程分析


依据安天对漏洞的深度分析结果,攻击者对该漏洞的利用主要分为三个阶段:Spring JAVA漏洞利用环境构造、恶意代码上传、恶意代码触发。

● 攻击阶段一 :Spring JAVA漏洞利用环境构造

● 攻击阶段二:恶意代码上传

● 攻击阶段三:恶意代码触发

安天青竹智语实验室针对该漏洞攻击的三个阶段分别采取相应的防护方案。

● 针对攻击阶段一,检测用户的请求数据中是否包含该漏洞的攻击特征,对攻击者构造漏洞利用环境的HTTP请求进行检测拦截。

● 针对攻击阶段二,通过检测用户提交的数据中是否存在恶意代码片段,阻止攻击者上传恶意代码。

● 针对攻击阶段三,通过业务安全异常监测功能实时发现攻击者对恶意代码的访问,并以此为线索对攻击者的历史流量进行调查、回溯。

3.安天青竹 0-day漏洞发现与防护


解决方案对用户的业务访问进行实时监控,能够及时发现异常的业务访问,并具备对异常的业务流量进行完整的事件回溯能力。

针对Spring Framework漏洞攻击的第三阶段,用户以业务安全功能的告警为线索源头,通过对异常流量的调查回溯,梳理出攻击的整个过程,定位出存在于攻击阶段一中的漏洞利用链构造请求,进而从该请求中提取攻击特征,创建自定义特征检测规则,最终实现对该漏洞的防护。

上述整个过程并不要求用户具备特别专业的网络安全知识,用户也不需要了解Spring 框架的开发细节,便可以较为轻松地为Spring框架漏洞添加相应的检测规则。

0-day漏洞发现使得用户在漏洞尚未被披露前具备对0-day漏洞的对抗、防范能力,面对0-day漏洞化被动为主动,实现主动防御。

3.1 基于高危资源访问的漏洞发现与防护

业务安全的“业务分析”->“页面分析”->“最少IP访问的页面排名”面板能够统计出指定历史时间段内被最少IP访问过的页面。该项统计是业务安全的一个重要指标。一些可疑的资源访问,如对网站后台的管理、攻击者对木马的访问控制等极易出现在该统计列表中。管理员需要谨慎甄别、审核出现在列表中的访问,对于异常的访问进行调查分析。

在本案例中,Spring漏洞攻击的第三个阶段会触发对恶意代码资源的访问。该资源仅会被攻击者个人访问,对于其它正常用户并不可见,所以攻击者对恶意代码的访问(URL:“/tomcatwar2.jsp”)会出现在“最少IP访问的页面排名”面板统计中。

注:本文中的数据均为漏洞演示数据。

点击可疑访问进入对该访问的详细信息统计界面。该界面显示历史上仅有一个IP对该资源进行了访问,该IP地址为“192.168.3.190”(漏洞演示IP地址)。

通过“IP分析”功能进一步查看该IP的历史访问统计。

通过“点击回溯”调查该IP在指定的历史时间段内的业务访问。从中可以回溯出攻击者在攻击第一阶段构造漏洞利用环境的HTTP请求。

点击访问记录可以查看当前访问的详细信息。

从完整URL项可以看到,URL中包含大量的异常信息(攻击者对Spring存在漏洞类对象的访问控制)。从中管理员能够很容易将其甄别为恶意攻击访问。通过查看该访问的Web服务器返回码,可以确认该访问并未被检测阻断,于是可以基于该访问提取特征,为其添加自定义特征规则(自定义特征添加请参见“自定义规则防护”章节)。

至此,管理员通常意识不到这是一个0-day漏洞攻击,只是通过常规操作对该漏洞进行了缓解。有经验的安全专家结合整个访问上下文能够研判出这极可能是一次成功的网络攻击,服务器很可能存在重大的安全漏洞,可进一步上报专业的安全组织进行深入调查。

3.2 基于恶意代码检测的漏洞发现与防护

同样地,用户还可以结合业务安全的“威胁分析”与“IP分析”功能,对触发过高危攻击的IP进行调查、溯源,进而回溯出针对该漏洞的整个攻击过程,并提取攻击特征、添加自定义防护规则。

在本案例中,攻击者在攻击的第二阶段会上传恶意代码。特征库包含完善的恶意代码特征,能够有效的检测恶意代码的上传。内置威胁评估引擎,该引擎对于引发高危事件的来源IP给予较高的威胁评级。

管理员以高危的威胁事件和来源IP为线索可以完成该漏洞攻击的回溯。

4.安天青竹在线实时拦截


4.1 预定义特征规则防护

预定义特征规则防护针对该漏洞攻击的第一和第二阶段,阻止攻击者构造漏洞利用环境的企图以及后续的恶意代码上传行为。

特征库Sigdb-V2-1000-45已包含该漏洞的防护规则。通过特征数据库实时更新功能,在无需用户介入的情况下,完成特征库的自动升级。

在对应特征检测策略中开启“已知漏洞防护”攻击类别,并将告警动作设置为“阻断”。

发送攻击请求,针对该漏洞的攻击被成功拦截。

4.2 自定义特征规则防护

自定义特征规则允许用户自行定义攻击特征。结合业务安全防护功能,用户可以对异常流量进行调查、回溯,对可疑、异常的流量创建自定义特征规则。

1. 创建一条自定义特征检测策略“Spring RCE”:

2. 点击“规则配置”为其添加自定义特征检测规则,并按如下进行设置。

➢ 检测对象:HTTP请求

➢ 告警动作:阻断

➢ 检测内容:class\.module\.\w+

➢ 匹配对象:URL、HTTP请求体

3. 保存后在站点设置的“安全防护设置”中引用该自定义检测策略。

5.特征数据库实时升级


通过对该漏洞进行了分析、复现,对特征数据库提供了及时的更新升级,解决方案有效地保护了用户资产的安全。

特征数据库支持在线实时升级和离线手动升级。通过在线实时升级功能,用户的特征数据库能得到及时的更新。

对于存在网络访问限制的用户,可以通过手动升级的方式对特征数据库进行升级。对于高危漏洞,安天青竹会及时向用户发送告警通知,用户可以自行下载升级包进行手动升级。

6.结语


本业务防护解决方案集成了WEB安全防御、自动化业务攻击防护、用户业务访问控制、业务逻辑异常检测、业务威胁评估以及业务大数据分析,是一体化的综合业务安全防护、分析网关型产品。

对于Spring Framework远程命令执行漏洞,安天青竹具备综合、纵深的防护手段,能够针对漏洞攻击的各个阶段提供相应的安全防护策略,使得用户在0-day漏洞发布和修复之前具备对0-day漏洞攻击的对抗防御能力。用户通过对异常业务访问流量的回溯与调查可自行创建相应的漏洞检测规则,缓解0-day漏洞产生的影响。

参考资料:
[1] https://www.cnvd.org.cn/webinfo/show/7541 [2] https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement [3] https://github.com/spring-projects/spring-framework/commit/7f7fb58dd0dae86d22268a4b59ac7c72a6c22529

安天青竹智语实验室简介

“安天青竹智语实验室”是安天集团为保障业务应用安全成立的实验室。该实验室在应对传统Web应用威胁的基础上,深度结合客户业务,发现逻辑异常、分析用户行为、追溯攻击源头,通过揭示攻击行为的深层次原因,提早发现客户业务系统漏洞,为业务稳定运行提供有效防护。