京东云RASP云原生安全免疫创新实践

京东,rasp,原生,安全,免疫,创新,实践 · 浏览次数 : 74

小编点评

**4.1 RASP安全运营定位在日常京东云RASP安全运营中** **4.2 大促防护京东云RASP已经历了多次双十一、618大促防护。** **4.3 国家级攻防演习对抗效果在国家级攻防对抗实战中** **5. 总结RASP产品本身优点明显,通过无感知的注入应用进程,可以更了解应用程序的上下文,减少大量的误报和漏报问题,不依赖规则的更新,可对0day漏洞免疫**

正文

作者:京东云 刘一鑫

1 背景

随着网络攻击事件整体呈上升趋势,应用作为网络入口承载着大量业务和流量,因此成为了安全的重灾区。黑客往往借助自动化的工具以及安全漏洞,对Web进行漏洞扫描和探测,进而利用漏洞攻击,达到窃取Web应用的敏感数据或者入侵服务器的目的,这大大加剧了应用面临的安全风险。以前一段时间出现的log4j2漏洞为例、这是近十年来最严重的漏洞,由于使用广泛和漏洞利用简单,影响70%以上的企业线上业务系统,官方发布漏洞修复补丁后依旧被多次绕过,几乎所有互联网公司都在通宵加急处理漏洞、修复更新,避免造成黑客攻击事件。除此之外,还有像fastjson、Xstream等相关漏洞,此类漏洞还是会长期与应用共存。

2 传统应用安全防护方案

2.1 WAF

传统应用安全的解决方案,大部分安全从业者都会想到WAF(Web Application Firewall, 应用程序防火墙),WAF是一种专门用于分析HTTP/HTTPS流量的专用防火墙,可以深入到每一次HTTP/HTTPS请求和详情中去检查是否包含敏感字段,然后放行正常行为,拦截恶意行为,就像自来水过滤器一样,把“杂质”从庞大的流量中剔除出去,这样应用程序就只会响应正常的请求,从而达到保护应用程序的目的。

但随着黑客攻击应用程序的威胁不断演变,基于规则对流量进行检测的分析手段容易被绕过,并且需要根据不断演变的漏洞进行规则的持续更新。

2.2 黑白盒扫描

应用安全解决方案除了WAF以外,还可以通过黑盒和白盒扫描的方式。

SAST或称为“白盒测试”已经存在了十多年。它使开发人员可以在软件开发生命周期的早期,在应用程序源代码中找到安全漏洞。

DAST或称为“黑盒测试”可以发现正在运行的应用程序中的安全漏洞和弱点。它通过在应用程序上采用注入技术来识别常见的安全漏洞(例如SQL注入和跨站点脚本)来做到这一点。

但他们都无法解决已经在运行中的应用安全问题,只能通过事前的扫描发现安全漏洞,并且也需要根据不断演变的漏洞进行规则的持续更新。

3 京东云RASP应用运行时自我保护技术实践

21年12月Apache Log4j 开源组件被曝出严重漏洞,被认为是“21年最重要的安全威胁之一”,22年4月Spring 开源应用开发框架也被爆出了一个严重高危漏洞。

针对0day漏洞攻击频发,安全形势日益严峻的现状,京东云自主创新云原生安全RASP应用运行时自我保护技术(英文全称:Runtime Application self-protection运行时应用时自我保护(简称RASP)),通过注入安全疫苗的方式将防护引擎嵌入到应用内部,与应用程序融为一体,使应用程序具备自我防护能力,对0day漏洞、内存马等攻击实现免疫防护。

3.1 工作原理

相比于传统的边界安全产品,RASP不过度依赖检测规则持续更新。从原理上来看,RASP是从应用内部对关键函数操作的数据进行分析,即使原始请求经过加密和混淆,但是它在应用内传播到最终的底层函数时将会以明文方式被RASP截获,并根据应用当前上下文精准识别攻击事件,给予实时阻断,因此相比WAF能减少大量的误报和漏报问题。基于此特性,RASP还能为安全人员和开发人员提供更为详尽的攻击链路,包括攻击原始 Payload、代码调用堆栈等信息,方便他们进行漏洞定位、复现以及修复。

对于一些经常爆发漏洞的开源软件和第三方组件而言,漏洞存在位置和利用方法可能不同,但是在进行利用时,执行到应用代码底层,往往都会聚集到一些“敏感”函数上,如反序列化、数据库执行、命令执行、文件操作、响应返回等相关函数。如果通过RASP技术对这些底层“敏感”函数调用做一定识别阻断,即可免疫大部分0day攻击。因此,从此类实践应用出发,RASP天然可作为漏洞热修复和免疫0day漏洞的应用安全疫苗。

3.2 0day漏洞防护示例

接下来,我们通过 fastjson 反序列化漏洞的攻击场景来演示 RASP应用安全的实际防护效果,fastjson 的反序列化过程主要如下:

当执行上述代码时,在反序列时如果存在恶意的方法则会触发命令执行。但在部署了RASP的应用中,发生上述反序列漏洞时,RASP应用安全会识别到序列化漏洞产生的命令执行行为,从而直接阻断该反序列化动作并发送告警通知,在攻击详情还可以进一步分析攻击源以及漏洞代码位置。

fastjson 反序列化漏洞的利用核心,还是在于寻找可以造成代码执行的类,实际上在 java 庞大的 jdk 类库以及第三方类库中存在着大量的可利用类,传统流量产品如 WAF,往往需要在防御时去穷举这些可能被利用的类,可能经常会出现遗漏,而基于 RASP 的上下文分析能力与基于行为的攻击发现方式,将会捕获掉所有由 fastjson 造成的代码执行、恶意文件上传、敏感文件读写等行为,而无需去针对特定代码实现做精准匹配,所以不会存在被绕过的可能性。

3.3 京东云RASP云原生安全免疫平台架构设计

目前京东云 RASP云原生安全免疫平台具体架构设计如下:

京东云 RASP架构主要包括探针、客户端、云端服务三个模块。

探针模块,主要通过将类转换器添加到Instrumentation,在类加载前后,对字节码进行操作,注入RASP的安全探针。在运行了RASP安全探针的 Java 程序中,字节码的加载会经过自定义的类转换器,过滤出存在攻击风险的关键类,再将检测的逻辑插入到字节码文件中,统一进入JVM中执行,相当于在应用进程中加入 hook 点,当程序运行流程到了 hook 点时,实时采集Web 应用的高风险行为,并通过引擎实时对高风险行为阻断并上报日志。

客户端模块,主要用于对探针模块进行管理,云端服务下发的指令都会通过客户端对探针进行管控,包括模型管理、升级管理、异常监控等。

云端服务模块包括三部分:一是日志处理服务,通过流式分析引擎对上报的日志进行处理二次分析,二是运营管控服务,通过运营管控服务对RASP客户端进行管理,三是数据可视化展示平台,将整体安全态势,事件发现,资产、API等数据可视化展示出来。

3.4 RASP攻防对抗应用场景

从攻防角度看,应用层面积极防御的建立可促进纵深防御体系更加深入,推进业务应用实质性安全落地,京东云RASP主要存在以下应用场景:

1)应用资产管理:借助插桩节点推广覆盖,可梳理微服务应用IP、URL地址、API接口、第三方组件等,并绘制资产关联图谱;

2)运行时入侵检测:基于应用污点分析和上下文分析技术,实时检测应用远程命令执行,恶意反序列化,敏感信息,错误的内容类型,OGNL注入,未授权网络活动,未捕获的异常,未验证的请求,恶意文件操作,DNSLOG探测,恶意动态库加载,内存马,XXE注入等,并实时预警高危组件风险,定位具体应用;

3)攻击威胁疫苗:免疫通用Web应用漏洞及第三方组件安全漏洞,防御0day漏洞,并对EDR难以防御的反序列化、代码执行等攻击进行更加有效的阻断;

4)应用安全基线:符合性应用层基线配置检测,覆盖中间件、单应用、微服务等;

5)敏感数据审查:基于可获取应用内部数据输入、操作、内容的先天技术优势,可针对业务侧关注的个人信息、业务数据等敏感信息进行合规审查,敏感数据未授权访问检测等,必要时进行输出阻断和过滤;

6)应用热补丁:对已上线的重要应用系统,当出现重大漏洞短时间难以修复时,可以动态下发热补丁进行修复,在不中断业务的同时为应用系统提供临时防护,为漏洞修复争取宝贵的时间;

7)东西向流量分析:以微服务架构作为基础,除了对应用间流量和东西向流量描绘,更能深入呈现应用程序内部具体执行操作,为安全运营提供从网络层到应用内部真实执行过程数据,分析攻击链路。

4 京东云RASP云原生安全免疫平台最佳实践案例

4.1 RASP安全运营定位

在日常京东云RASP安全运营中,如何保证业务更稳定,运营更高效,应急更及时,是我们一直思考的问题。比如要如何做到攻击告警可运营,包括拦截日志,事件日志,分级分类区别哪些需要关注,哪些必须后续处理,自动发单,漏洞修复等,做到运营闭环,事件闭环。在部署时,做到一键部署,为保证业务稳定,按半分比进行灰度部署,并且可回滚,通过配置策略告警,策略优化,监控应用各项性能指标,快速响应故障报警等。

4.2 大促防护

京东云RASP已经历了多次双十一、618大促防护。在大促的业务高并发挑战下,RASP基于自研运行时代码植入框架、隔离保障机制、兼容性管理,对业务性能几乎无影响,且无误拦截事件产生,通过了拦截能力和性能压力的双重考验。

4.3 国家级攻防演习对抗效果

在国家级攻防对抗实战中,京东云RASP也发挥了巨大作用。攻击方主要把精力都放到寻找入侵点上,各种0day、Nday漏洞,经常会被用来寻找突破点。而作为防守方,京东的攻击暴露面非常广,防守困难,虽然有WAF、IPS、防火墙、零信任等多款安全产品的纵深防御体系,但黑客突破边界后,仍无有效工具能够自动拦截黑客的入侵行为。当有0day或重大漏洞爆发时,相关厂商可能没有快速解决方案,且有方案的话也需要安全人员进行大规模紧急修复,效率低、容易遗漏资产、业务体验很差。但部署了RASP的应用可在攻防对抗中及时进行策略调整,快速有效地抵御fastjson、shiro、反序列化、log4j等0day、Nday漏洞攻击。

5 总结

RASP产品本身优点明显,通过无感知的注入应用进程,可以更了解应用程序的上下文,减少大量的误报和漏报问题,不依赖规则的更新,可对0day漏洞免疫。在纵深防御体系中,RASP是现阶段保障应用安全强有力的存在。但安全方面没有所谓一揽子工程,不存在一款产品能解决所有问题,攻击技术的发展演进会推动防护能力的创新。京东云RASP也会在持续升级的攻防中不断迭代优化,提高应用本身的“免疫力”。

与京东云RASP云原生安全免疫创新实践相似的内容:

京东云RASP云原生安全免疫创新实践

随着网络攻击事件整体呈上升趋势,应用作为网络入口承载着大量业务和流量,因此成为了安全的重灾区。本文介绍京东云RASP云原生安全免疫平台工作原理以及最佳实践,减少大量的误报和漏报问题。

[转帖]高并发下丢失更新的解决方案

京东云 ​ 已认证帐号 已关注 1 背景 关键词:并发、丢失更新预收款账户表上有个累计抵扣金额的字段,该字段的含义是统计商家预收款账户上累计用于抵扣结算成功的金额数。更新时机是,账单结算完成时,更新累计抵扣金额=累计抵扣金额+账单金额。 2 问题及现象 发现当账单结算完成时,偶尔会发生累计抵扣金额字

京东云TiDB SQL优化的最佳实践

京东云TiDB SQL层的背景介绍 从总体上概括 TiDB 和 MySQL 兼容策略,如下表: SQL层的架构 用户的 SQL 请求会直接或者通过 Load Balancer 发送到 京东云TiDB Server,TiDB Server 会解析 MySQL Protocol Packet,获取请求内

一种基于柔性事务的分布式事务解决方案设计探究

1 背景 市面上常见的有,2pc/3pc、tcc、saga等常见的分布式事务解决方案,但是实际实施起来框架比较重,设计开发比较繁琐,不易于快速开发上手。本文提供一种基于柔性事务设计的简单易上手的分布式事务设计方案,用于解决常见的分布式事务常见场景。 2 常见分布式事务场景 2.1 同步场景 常见的场

有奖测评 | 今天种下{1},明天就会收获一片{11.11}——程序员日暨11.11狂欢季来啦

关爱程序员,从我做起。京东云11.11云上狂欢季,为所有程序员送福利,解锁N种优惠玩法!

Redis数据结构(一)-Redis的数据存储及String类型的实现

Redis作为基于内存的非关系型的K-V数据库。因读写响应快速、原子操作、提供了多种数据类型String、List、Hash、Set、Sorted Set、在项目中有着广泛的使用,今天我们来探讨下下Redis的数据结构是如何实现的。

个人和初创企业想要搭建网站,如何挑选一台便宜合适的云主机?

一台云服务器,除了域名备案外,可以做很多事情,个人可以使用云服务器部署个人博客系统、论坛系统、私人网盘,部署各种后端服务,企业主要用来网站建设,适用于社区网站、企业官网、门户网站、电子商务网站、游戏类等各种应用,还可以用来数据库应用、制图渲染等等。 个人搭建博客、小型网站的话,1核2G配置即可。对于

京东云开发者| Redis数据结构(二)-List、Hash、Set及Sorted Set的结构实现

1 引言 之前介绍了Redis的数据存储及String类型的实现,接下来再来看下List、Hash、Set及Sorted Set的数据结构的实现。 2 List List类型通常被用作异步消息队列、文章列表查询等;存储有序可重复数据或做为简单的消息推送机制时,可以使用Redis的List类型。对于这

京东云开发者|探寻软件架构的本质,到底什么是架构?

不论是开发人员还是架构师,我们都一直在跟软件系统打交道,架构是在工作中出现最频繁的术语之一。那么,到底什么是架构?你可能有自己的答案,也有可能没有答案。对“架构”的理解需要我们不断在实践中思考、归纳、演绎,形成自己的认知。 1 到底什么是软件架构 ? 定义 ”架构是什么“ 是件非常困难的事情,不同的

京东云开发者|京东云RDS数据迁移常见场景攻略

云时代已经来临,云上很多场景下都需要数据的迁移、备份和流转,各大云厂商也大都提供了自己的迁移工具。本文主要介绍京东云数据库为解决用户数据迁移的常见场景所提供的解决方案。