软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列—RASP自适应威胁免疫平台-下篇
2023-4-27 20:15:23 Author: mp.weixin.qq.com(查看原文) 阅读量:6 收藏

软件供应链安全工具链研究系列

RASP自适应威胁免疫平台-下篇

在“软件供应链安全工具链研究系列—RASP自适应威胁免疫平台-上篇”中我们提到了RASP工具的基本能力、原理以及工具的应用场景,了解到了RASP工具在各场景下发挥的价值。那么在当今高强度攻防对抗的大场景下,RASP作为最后一道防线,不论是从高危漏洞修复还是应对高级攻击技术,都有着更高的要求。

1.工具应具备的能力建议

1.1 技术能力方面建议

1.1.1 虚拟补丁技术

RASP在为应用系统赋予威胁免疫能力的同时,也应具备临时修复漏洞的能力,即虚拟补丁技术。当应用的中间件或应用代码中出现重大0day漏洞,且官方针对该漏洞暂未修复,特别是对大型复杂系统,不允许对应用系统进行重启的情况下,虚拟补丁技术能够及时对漏洞止血,大大降低漏洞逃逸时间,防止因为官方发布修复方案延迟造成重大损失。通过添加规则、请求内容判断等措施,在短时间内完成整个企业、全部应用服务的安全加固与漏洞临时修复。

针对老系统维护问题,有些企业的历史比较悠久,其使用的信息系统的上线时间比较早,有时候并非没有发现问题,而是因为系统老旧,发现了问题却无从下手,无法从代码层面进行整改,风险较大,此时RASP的虚拟补丁可以很好的解决此类问题,同时也为企业降低风险以及问题修复成本。

1.1.2 Webshell检测能力

Webshell是黑客以及在护网场景下的攻击对常用的入侵手段,用来获取对应用服务器的某些操作权限,当攻击者成功上传Webshell后,可以在应用服务器上执行敏感命令、窃取数据、植入木马病毒,危害极大。而且随着攻击技术的不断演进,Webshell通讯隐蔽性极强,多采用加密手段进行通讯,传统的依靠流量检测的安全设备极难发现。那么当流量侧检测失效时,RASP应该作为最后一道防线进行防御。

针对大马、小马、一句话木马

此类Webshell依赖文件上传、写入等操作实现,RASP通过插桩和语义分析技术,当恶意文件落地或执行时,可实现Webshell精准拦截。

由于RASP工作在应用运行时环境,相对于流量侧检测安全设备,RASP可以直接获取到解密后的流量,无需考虑加解密场景和伪装和变形的流量。只需要根据根据对应语言设计对应的识别参数,只要用户请求中包含此类逻辑,并且设计到黑名单函数,即可进行精准拦截。

针对内存马

内存马相对于常规的Webshell更容易逃避安全设备的检测,以Java内存马为例,主要有以下两种类型:

基于中间件和框架实现:基于Servlet或Spring等框架封装过的Servlet进行利用

基于Java Instrumentation方式:基于Java 1.5新加入的特性,通过jar包或构造InstrumentationImpl类进行利用

对于方式一和构造InstrumentationImpl类的内存马,它需要先利用 RCE,例如log4j2等反序列化、JNDI注入漏洞。对于jar包利用,则需要先上传agent.jar。

由于内存马变化比较多,RASP可以通过以下两种方式进行防护:

1)常见敏感类监控

Servlet 协议中的一些高风险接口:

* `javax.servlet.Filter`

* `javax.servlet.Servlet`

*`javax.servlet.ServletRequestListener

* `javax.servlet.http.HttpServlet`

* etc.

Spring 敏感注解

常见敏感类、包

2)通过底层命令执行实时监控

其实无论是传统webshell还是隐匿性更强的内存马来说,最终目的都是获取权限、获取敏感数据。RASP 通过对底层命令执行方法、I/O 等进插桩,只要触发了敏感行为探测逻辑,RASP可以在第一时间进行拦截并上报。

1.1.3 开源组件安全

开源安全是一个老生常谈的话题,研发过程中大量使用开源库,却很少对它们进行安全测试。大概是被偏爱的有恃无恐,存在于开源中的安全漏洞总会突然跳出来给大家当头一棒。RASP应保护程序免受因为开源组件缺陷而引入的安全风险。

RASP应涵盖开源组件中可能出现的漏洞情况,如SQL 注入或跨站点脚本 (XSS),RASP可通过例如CVE、CNVD、CNVVD等漏洞库、自身漏洞防护策略阻止开源组件漏洞被利用。

1.2 可用性、便捷性等能力建议

1.2.1 安全策略引导生成

在企业安全建设中,通常不会只关注核心业务服务器这一个点,在历年的攻防演练中可以发现,从供应链软件、日常办公系统,甚至食堂系统都可能是攻击队入侵的主要节点,再由此类失陷节点逐步向内渗透插旗,因为此类系统处于内网中,防护能力相对薄弱,横向渗透限制较少,所以综上来看,一些看似不重要的节点或系统,更容易被利用,所以可以通过结合RASP的告警信息,或者策略模板,将一些安全策略、防护思路推送给其他节点的WAF、或者防火墙产品,来进行一定程度的安全能力补充,将RASP的安全防护能力充分的扩散到各个区域。

另一方面,RASP的探针是植入在应用中,共享业务服务器的性能和资源,而RASP的探针分析请求,也是在消耗服务器的资源。当请求或者恶意请求、恶意扫描等流量到达服务器时,RASP探针会对这些请求进行逐个分析和判断,恶意流量还需要去做阻断行为的动作,此时对服务器资源会有一定程度的消耗,若服务器本身性能较低,还会很大程度增加业务延迟风险,所以节省服务器资源也是比较重要的一点,那么RASP可以做的就是尽量减少对请求的处理,例如恶意扫描类、爆破类、爬虫类攻击行为,在前端的WAF、IPS/IDS就可以很好的解决,而且,WAF类产品通常都是一个独立的节点,性能相对更高。另外针对这几类攻击的策略相对便于生成,RASP可以结合流量或实际攻击行为,将策略条目、判断关键字推送到前端WAF、IPS类产品,由他们去做该类攻击的防护,这样可以减轻服务器端RASP探针的性能压力,保障业务优先的同时,RASP探针可以有更多的精力去对抗0day和其他复杂漏洞。

1.3其他具有前瞻性创新性的能力建议

1.3.1 攻击溯源能力

众所周知,RASP针对漏洞利用的防御能力是非常强悍的,但是目前RASP针对攻击的溯源能力还是比较欠佳,从目前每年的公安部护网行动来看,防守方从最开始的被动挨打,慢慢的演变成对攻击队进行溯源反制,可以发现溯源在常态化攻防中变得尤为重要,蜜罐等产品的诞生也可以体现溯源的重要性。那么RASP在未来也可以更多的参与到攻击溯源中来,而不是简单的对攻击进行阻断防护。

溯源显然不是可以单独依靠一个产品来解决的事情,毕竟攻防是多维度的而不是线性的,但是RASP可以根据策略类型及告警类型,打造自己的攻击链条/画像给客户展示,例如,可以参考攻防杀伤链来展示攻击告警,当RASP发现以同一源IP发起的多次攻击时,可根据该IP的攻击行为,梳理出攻击行为画像。举个例子,RASP通过监控应用发现某个源IP对本应用发起多次URL目录枚举,并在多个URL下存在上传文件行为,而且有横向网络探测行为,那么根据这些零碎的攻击行为,可以大致梳理成一条攻击路径展示给客户,有助于用户溯源。

2.RASP实践案例 

2.1 案例名称

国内某银行RASP自适应威胁免疫平台采购。

2.2 业务效果

相较于现有技术,该用户引入RASP后用于防护数字化银行业务应用的注入攻击、跨站攻击以及Webshell攻击等,本项目改进后主要能够取得如下提升:

1)防护效率的提升:不同于现有防护设备的盲目的规则匹配,RASP对业务应用内部的关键函数进行防护,在这些关键函数执行之前添加安全检查,得到的参数都是经过变形还原后的、真实的请求数据,安全防护的效率大大提升。

2)覆盖度的扩充:RASP主要应用于新时代金融业务应用的安全监测,通过可注入的业务应用,能处理绝大多数的网络协议:HTTP、HTTPS、AJAX、SQL 与 SOAP。而传统防护设备通过监控网络流量提供保护,因此只支持 Web 应用程序(HTTP类型)。

2.3 关键举措

结合该银行内部自动化发布平台,将RASP探针自动化发布至业务环境中,完成业务迭代测试、生产上线的全自动化安全防护,以此方式,完成了产险业务应用出厂的安全自我免疫,大幅度降低了业务应用的安全运营风险。

2.4 应用场景

本案例中RASP的应用场景有如下三个方面:

1. 网络攻防演练:

在网络攻防演练中,Web攻击始终是主流的攻击手段,同时云原生、AI等新技术的不断应用,更多复杂的攻击手段应运而生。对于防守方而言,不能单纯依赖于无法看到应用程序内部威胁的流量嗅探边界(IPS/IDS、WAF)的解决方案,而是需要一种更有效的方法以更高的可见性监控安全事件。

RASP工具将防护引擎嵌入到应用内部,可以在不依赖请求特征的情况下,准确的识别代码注入、反序列化等应用异常,弥补了传统防护工具的缺失;同时,又可以对威胁事件进行实时监控和响应,利于在攻防对抗中及时进行策略调整,及时应对。

2. 紧急漏洞防御:

0day漏洞是比较常见且难以防御的一类威胁,一旦被发现将对系统造成不可估量的损失。RASP位于应用程序内部,在运行时根据应用程序代码的上下文检查请求负载,以确定请求是正常请求还是恶意请求,可以通过自身免疫更好应对此类安全威胁。

3. 高级威胁防御:

随着新技术不断发展和网络安全防护措施不断加强,攻击者的攻击手段也呈现跃迁式升级。像无文件攻击、WebShell攻击、内存马攻击等攻击手段不断被应用,而传统的安全防护工具容易被绕过。

RASP基于行为分析技术,通过行为分析、污点追踪的检测方法,可以对此类攻击事件进行实时监测,发现威胁数据源,做好安全防御。

2.5 技术路线

RASP(Runtime Application Self-Protection)是一种植入到应用程序内部或其运行时环境的安全技术。它能够控制应用程序的执行流程,并且可以实时检测和阻止漏洞攻击行为。该技术可以用来通过自我保护的措施来阻止相关网络攻击,或在没有人为干预的情况下自动重新配置环境,以此来解决特定网络问题(威胁,故障等)。

总结 

RASP中的防护得益于可以站在程序内部对行为进行监控和拦截,使得有着攻击高检出、低误报的能力。对于加密流量、攻击混淆、绕过的检测也有得天独厚的优势。

中文思源黑体

往期推荐

1. 检测评估组 | 组长单位工作寄语

2. 软件供应链安全社区 检测评估组|软件供应链安全治理工具链概述及通用能力建议

3. 软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列之威胁建模分析工具

4. 软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列之云原生应用保护平台工具

5. 软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列之渗透测试工具

6. 软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列之SAST工具

7. 软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列之 IAST 工具

8.软件供应链安全社区 检测评估组|软件供应链安全工具链研究系列—RASP自适应威胁免疫平台-上篇

【END】

软件供应链安全治理工具链系列研究由中国信通院、中国电信联合牵头,会员单位悬镜安全、比瓴科技、默安科技、泛联新安、中兴通讯、墨菲安全、探巡科技支持开展,包含9篇软件供应链安全治理工具研究,梳理软件供应链安全治理工具链,对各类工具提出基本能力要求建议,为各国家机关、企事业单在软件供应链安全体系建设中的安全评估工具提供必要的选型参考和技术支撑,为行业内软件供应链安全治理工作的前行贡献力量。


文章来源: https://mp.weixin.qq.com/s?__biz=MzA3NzE2ODk1Mg==&mid=2647785614&idx=3&sn=a4a50357d11b678d936b0880208f086b&chksm=877088d9b00701cf045cfbd22fcb43123dfee609e5191ba64e464e7f079d1b4f2a7e74e130d5&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh