ISC技术分享:从RASP开启云上应用安全防护

演讲者周幸在ISC2022大会上分享了现代数字化应用的架构和开发模式变化对安全的影响,强调了RASP在云上应用安全防护中的关键角色,以及悬镜安全的OneAgent解决方案,探讨了DevSecOps在应用安全中的重要性,特别是如何通过RASP应对自研代码和开源组件的漏洞风险。
摘要由CSDN通过智能技术生成

在第十届互联网安全大会(ISC
2022)云安全发展峰会上,悬镜安全华东区技术合伙人周幸应主办方的特别邀请,发表了主题为“从RASP开启云上应用安全防护”的演讲。1681282244_643654c43d4997906036b.png!small

以下为演讲实录:

我是悬镜安全的周幸,非常荣幸参加ISC
2022,本次我的分享包含三大内容:现代数字化应用的一系列变化导致安全视角的转变;RASP的应用安全防护能力;悬镜的应用安全解决方案。

现代数字化应用的变化

  • 架构模式的变化

现代数字化应用相比之前的应用,整体的架构模式更加复杂。比如以前从页面访问商品,从请求到前端服务器处理再到后端与数据库交互,进行数据返回和展示,这整个过程体现出单体应用架构简单。

当应用走向了云原生,转变为微服务的架构之后,后端服务提供多元化服务比如支付、存储、库存、商品展示等模块的拆分。

这种架构模式的转变使得安全的工作量增加了。还是单体应用的时候,只需要通过简单的黑盒测试去扫描漏洞或者人工检测去发现业务逻辑漏洞等,比较透明和简单。而在云原生场景下,微服务应用的API安全、代码层面的安全等问题的出现,表明安全的视角随着架构模式的转变也发生了变化。

  • 开发模式的变化

开发模式也在发生改变。早期的瀑布式讲究按部就班,开发人员在进行开发的同时,测试和运维人员都在等待,等待开发完成再进行功能测试、性能测试。而当测试人员进行测试的同时,开发人员处于等待Bug反馈状态。这样的开发流程使得开发效率不够敏捷。

敏捷意味着在整个开发过程中,既能快速完成每一项计划的工作,又能迅速响应从需求端反馈而来的新需求。随着基础架构的升级和业务发展,开发模式需要转型为敏捷或者DevOps研运一体化。

DevOps打破了开发和运营的原有壁垒,将两者有机结合。运维人员会在项目的开发阶段就介入,了解开发人员使用的架构和技术路线,从而制定适配的运维方案。开发人员也会在用户初期,也就是系统部署过程中,提供优化建议。DevOps促使更多部门参与开发过程并互相配合。

  • 安全模式的变化

架构模式和开发模式的变化使得安全模式也发生了转变。

早期微软提出的SDL安全开发生命周期是基于SDLC软件开发生命周期提出的一种安全方案,其最终目的是为了保障软件开发的整个过程,使开发出的应用存在尽可能少的漏洞。

SDL的核心理念是将安全集成到软件开发的每一个阶段,从培训、需求、设计、实施、验证到发布响应,每个阶段都有相对应的手段去确保安全。但是在这个过程中会介入大量人工方式,一旦发版频率加快,就会给安全工作造成巨大压力,从而影响软件发布的周期。

因此,对应用开发生命周期进行保护的安全模式就演进到了当下的DevSecOps。

DevSecOps是一套基于DevOps体系的全新IT安全实践战略框架,最早由Gartner在2012年提出,近些年在国内,有了很全面的实践应用,无论是推行速度还是应用效率都在不断提高。

DevSecOps的核心理念是安全需要贯穿整个业务生命周期的每一个环节,是包括开发、测试、运维、安全等在内所有团队成员的责任。它还解锁一个思想是,安全工作需要前置性嵌入到现有的开发流程体系当中,做好应用上线前的安全检测工作和上线后的安全防护工作。DevSecOps体系更加强调自动化和敏捷化,这也是其在全球范围大受欢迎的原因之一。

随着上述这三大变化,应用上云后的安全风险面也发生着一些改变,核心是两部分:

1. 自研代码的缺陷:包括微服务相关的API安全、OWASP Top10中的Web通用漏洞以及容器与基础设施结合过程中的合规需求、安全配置等;

2. 开源或者第三方组件的漏洞。

总而言之,应用安全防护除了需要在开发流程中进行安全活动以外,也需要在风险面管控上做出适应性的改进。

RASP的优势和应用

RASP作为当下十分火热的技术,它在应用安全防护方面有哪些突出作用?

RASP能适应Java、PHP、Python、Node.js等运行环境,也适用于Tomcat、JBoss、Weblogic等中间件。它能通过动态插桩、应用漏洞攻击免疫算法、运行时安全切面调度算法等关键技术,将主动防御能力“注入”到业务应用中,借助强大的应用上下文情景分析能力,可捕捉并防御各种绕过流量检测的攻击方式,提供兼具业务透视和功能解耦的内生主动安全免疫能力,为业务应用出厂默认安全免疫迎来革新发展。

安全方面没有所谓一揽子工程,不存在一款产品能解决所有问题。从Web客户端到内部应用服务器,沿途有防火墙、IDS/IPS、WAF等一系列安全设备,但是都位于边界上,包括HIDS监控程序也没有作用在应用本身,它们只是不断地给应用添上“抗寒的衣物”,并没有保障应用本身的安全。

RASP就像疫苗,它不依赖于Web的防护策略,而是不断地去提高应用本身的“免疫力”。悬镜称之为RASP的应用自免疫能力。

在应用纵深安全的场景中,RASP可以和WAF等结合,进而对威胁产生告警和拦截。举个例子,在去年年末的Log4j2.x事件和今年年初的Spring框架事件中,如果使用RASP的能力是能够发现和拦截这些0day漏洞的,再结合WAF等形成纵深防御便能增强应用对0day攻击的防御能力。

RASP如何保护应用安全?应用将请求发送给RASP引擎,后者分析请求将攻击溯源并进行可视化展示比如攻击时间、攻击类型、攻击地址、攻击次数等。RASP还有一些扩展能力如运行时组件分析、API梳理等,都得益于插桩模式。

悬镜应用安全解决方案

应用架构模式和开发模式的转变,要求新兴的安全能力一定得适用于现代新型场景。

悬镜在大量实践IAST和RASP的过程中发现,可以将它们的探针与Tomcat等中间件结合,也可以与容器结合,从而将基础环境、代码和安全能力进行整合,共同打造云原生安全场景下的应用防护能力。同时,也可以把探针左移至上线前进行应用安全检测。

基于上述实践经验,悬镜提出了“ One Agent
”即探针一体化的应用安全方案,使得探针不仅可以作用于RASP积极防御,还可以作用于IAST灰盒检测和SCA开源组件检测。总而言之,在应用开发生命周期中插入探针,就能实现一众安全能力。即便在容器化环境中,利用单探针插桩,也能实现对第三方开源组件、应用本身漏洞、上线后的恶意攻击进行告警和拦截。

1681282299_643654fb617f76138f937.png!small

悬镜在推广DevSecOps的过程中发现,从理论研究到实践落地的整个过程需要不断去打磨和演进,因而总结并提出悬镜第三代DevSecOps智适应威胁管理体系。

应用安全工作是围绕应用开发生命周期展开的,因而整个DevSecOps是基于DevOps流程,将安全能力嵌入每一个环节。

安全能力一方面源自DevSecOps敏捷安全产品体系,除了前面提到的上线后的RASP,上线前的IAST和SCA,还包括轻量级威胁建模和BAS技术。其中BAS技术可结合探针对安全体系、安全设备的有效性进行度量。

除此之外,悬镜第三代DevSecOps智适应威胁管理体系还将提供一个CARTA安全开发赋能平台,对工具链进行综合管理并对结果进行可视化分析,使整个应用安全开发过程可控。安全能力另一方面也源自组件化的安全服务,包括开源治理、DevSecOps/SDL咨询、安全开发实训和红蓝对抗/渗透测试。

悬镜第三代DevSecOps智适应威胁管理体系除了能应用于DevSecOps敏捷安全场景,还能应用于云原生安全和软件供应链安全两大典型安全场景。

透测试。

悬镜第三代DevSecOps智适应威胁管理体系除了能应用于DevSecOps敏捷安全场景,还能应用于云原生安全和软件供应链安全两大典型安全场景。

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资料分享

当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值