为了更快实现应用发布和更新,越来越多的应用和APIs都是基于第三方开源代码完成的,这就引发了新一轮应用安全需求。在用户比以往任何时候都更注重应用安全的今天,一旦部署了易受攻击的应用程序,将会对企业品牌造成灭顶之灾。如何保护应用程序免受威胁是当前组织迫切需要解决一个问题。比如,很多企业安全人员几乎都要被告警淹没,90%以上的企业无法在当天处理完所有告警,尤其是各种应用漏洞告警更是层出不穷。
图1 让人头疼的安全问题
应用安全,有WAF还不够吗?
WAF通常位于Web应用程序前面,检查传入的HTTP请求流量,以查找已知攻击载荷和异常使用模式。当检测到可疑的载荷或使用情况时,WAF可以报告违规行为或报告并阻止请求。WAF一定程度上可以防护DDoS攻击、机器人自动化攻击、账号劫持攻击等问题。
RASP在WAF****后面提供了一层关键的攻击预防。RASP方法与传统WAF有所不同,因为它与应用程序代码紧密耦合。RASP使用上下文,无需黑名单或白名单就可检测威胁。RASP拥有非常低的误报率,以及对漏洞的高度可见性,包括一些未知威胁。因此,RASP可以作为WAF很好补充,也是应用程序最后一道防线。
青藤基于多年技术创新优势及丰富的实战经验积累,自主研发出一款RASP产品,将于2024年4月25日正式发布,有兴趣读者可以点击预约直播观看。
点击预约发布会
RASP使用场景
过去,在发生安全事件时,传统边界的安全设备无法提供详细的数据情报**,安全团队需要花费大量时间验证和测试,来回答“攻击是否真实?我们应该如何应对?”** **此外,**在引入RASP之前,SOC等产品无法将开发环境漏洞情况与运行时攻击数据进行关联。
RASP技术的引入为解决这些问题提供了新的可能性。RASP可以实时构建报告和可视化,具有极低的误报率,将实时攻击数据提供给SIEM或其他日志记录工具,揭示数据库返回异常数据集的情况。这使安全管理人拥有更好的可视化能力,并与其他数据源进行关联,消除了在较低级别调查和分析上浪费时间的问题。RASP通过在应用程序运行时环境中动态地监控和保护,能够捕获实时的攻击行为,并与预生产环境中发现的漏洞进行关联。
美国国家标准与技术研究所(NIST)甚至将RASP列为减轻由软件安全漏洞引起的风险的控制措施**。**RASP不仅在其自身功能上很重要,通常情况下RASP是对其他工具的补充,甚至提高了其他工具的有效性。
以下场景展示了安全管理员、DevOps团队和开发人员如何使用RASP来解决当前应用程序安全面临的一些挑战:
**(1)**减少漏洞积压
应用程序安全测试(AST)工具有助于缓解漏洞。但在大多数企业中,随着时间的推移,漏洞数量越来越多。在遇到攻击时,如果部署了RASP,超过95%的漏洞无需由开发人员进行修复,因为RASP可以对抗这些威胁。这将带来显著的效率提升和节省各类开支成本。
(2)通过可扩展的DevSecOps实现更快的应用发布
应用安全和软件开发生命周期经常存在矛盾。如果直接将RASP安装到自动化的DevOps管道中,通过持续集成和持续开发工具,RASP可以更无缝地提供安全性。组织可以更快地将应用程序推送到生产环境,而无需担心安全漏洞。
(3)实时了解生产环境攻击
部署RASP解决方案,可以将丰富的运行时威胁数据可以发送到SIEM和日志工具,或者其它安全工具。**从而回答诸如“哪些生产应用程序/资产遭受了最多攻击?”****、“哪些数据外泄事件源自防火墙之外?”等问题。**借助改进的取证和事后威胁分析,安全运营团队可以更准确地相关漏洞,并引导修复工作,以改进开发和合规性。
(4)为DevOps提供运行时情报
除了提供哪些应用程序最安全/最不安全的见解外,RASP还可以为DevOps团队提供关键情报。RASP可用于提供对应用程序在运行时将执行的操作的可见性,例如数据库调用、文件读取/写入、登录/注销、登录失败、生产应用程序的横向调用、使用的版本和框架等。
(5)保护老旧应用和基于开源代码开发的应用程序
很多老旧应用程序是使用较旧语言编写的,在多个版本实例中存在,很有可能没有足够资源开发或支持来修复漏洞。RASP可以保护这些应用程序,而无需开发人员或支持。此外,RASP还可以保护开源软件和第三方代码中的漏洞,无需改动代码。
(6)纵深安全防御最后一道防线
如果WAF或下一代防火墙是第一道防线,那么RASP就是应用安全最后一道防线。如今,应用程序主要依赖外部保护,例如WAF或IPS,因此有必要将安全功能构建到应用程序中,以便在运行时保护自身。RASP具有实时能力,可以执行诸如终止会话、发出警报等操作。这些功能使RASP成为现有WAF的出色补充。
(7)优化安全软件开发生命周期(SSDLC)
企业应继续使用动态和静态测试技术,并通过在生产环境中使用RASP来完成安全软件开发生命周期(SSDLC)。启用RASP的攻击情报将提高和优化SSDLC的效果,确保资源能够得到合理分配。
**开发人员对编程中引入的漏洞有所了解,但通常难以简单回答以下问题:“我应该修复哪些漏洞?应该使用白名单还是黑名单方法?输入数据中应该消除或允许哪些字符?编码如何处理?混淆的数据如何处理?性能方面有何考虑?”一个简单而统一的答案是修复那些易于在生产中被利用或已经显示出被利用的关键漏洞,并将RASP插件快速集成到应用程序的部署包中,以降低对其余较低层漏洞的风险。**任何一种方法在编码构建期间都易于实施,无需对应用程序的编写或测试方式进行重大更改。
(8)改善安全运营和响应
RASP赋予安全运营中心(SOC)团队应用层洞察力,使其能够做出更快、更简单、更智能的决策。
(9)满足合规要求
根据具体实施方式,RASP可以为需要满足众多合规要求的的组织提供关键的技术控制。例如在支付行业数据安全标准(PCI DSS)的情况下,RASP可以为多项要求提供自动化控制(见下表):
6.3
开发内部和外部软件应用程序时需确保安全
6.5
处理软件开发过程中的常见编码漏洞
6.6
确保应用程序受到已知攻击的保护
10.2
实施自动化审计跟踪
10.3
记录审计跟踪条目
11.4
使用入侵检测/预防技术
RASP评估选型的20条Checklist
要求
**优先级
**高/中/低
保护应用程序按预期运行**(1项)**
(RASP解决方案不能干扰应用程序行为)
在部署RASP之前和之后,对应用进行功能测试具有相同结果(即应用程序未“损坏”)
高
资源消耗低**(3项)**
(RASP解决方案不能对应用有太大影响,不能占用太多资源)
用户体验测试:在部署RASP之前和之后表现出相似的结果(即响应延迟非常低)
高
性能测试:在部署RASP之前和之后表现出相似的结果(即在预期负载下响应时间非常相似)
高
功能测试:在部署RASP之前和之后显示相似资源使用情况(即CPU、RAM使用率在可接受范围内)
中
成功预防相关威胁(5项)
(RASP方案必须能够应对各类针对应用程序、部署环境等威胁)
动态测试,部署RASP之后是否能有效应对类似OWASP top10类漏洞
高
测试应用程序在部署RASP之后能否应对各类混淆技术
高
测试RASP是否能检测类似HTTP请求中看不到那些流量,例如横向移动
高
测试部署RASP之后,成功攻击进入应用的流量指标是否大幅减少
中
RASP方案是否能提供可用于增强开发人员意识/安全培训计划的数据
低
融入运营**(10项)**
(RASP解决方案必须与部署环境和运营程序相契合,以最小化总体拥有成本)
RASP解决方案支持部署在任何环境中的应用程序(自定义、开源、第三方),例如本地数据中心、私有/公共云、容器、PaaS/IaaS)
高
RASP解决方案不会给部署环境引入风险
高
RASP安装部署简单
高
RASP解决方案的安装可以自动化以适用于“大规模”部署(例如CI/CD/DevOps - Jenkins、Chef、Puppet、Ansible)
高
RASP解决方案不需要额外的服务器基础设施、防火墙规则等
高
RASP解决方案立即生效,具有开箱即用的默认设置(例如最小调整,无需学习模式)
高
RASP解决方案具有与常用监控系统(如Splunk、ELK、QRadar等)预构建的集成能力
高
对RASP配置的更改不需要服务器重启
高
RASP解决方案提供全面的数据输出(即时间戳、有效载荷、URL、端口、源/目标IP、违规/事件类型、会话ID、Cookie、堆栈跟踪)
中
RASP解决方案的升级不会触发管理流程变更
低
供应商支持**(1项)**
(RASP供应商必须及时提供世界一流的支持,最新的软件发布版本、功能和错误修复)
RASP解决方案供应商提供全天候响应支持、提供关键性补丁、提供网页/电话/电子邮件支持
中
RASP使用价值
更好防御:实时的漏洞防御
许多组织使用RASP来嵌入一个随应用程序移动的最后防线,无论是在云端、本地、在预发布阶段还是在生产中。作为符合要求的自动化技术控制,RASP通过执行实时漏洞缓解,减轻了开发压力。
更快的发布速度:可扩展、与DevOps兼容的应用安全
在RASP出现之前,应用安全和DevOps经常存在分歧。应用程序开发和部署日益分布化、敏捷化的特性使得预防漏洞变得复杂且具有挑战性。虚拟化、容器化、微服务和云使应用程序和数据无处不在,难以在不同平台和环境中保持一致和准确的监控。更糟糕的是,预发布测试要求会在软件开发过程中产生瓶颈。一些漏洞甚至可能阻碍发布,这在快速发布、持续集成/持续部署(CI/CD)的DevOps周期中可能会带来问题。
**RASP可以直接融入DevOps的构建/部署流程中,使得应用程序可以在没有任何延迟的情况下安全地部署到生产环境中。RASP的检测和预防功能可以直接嵌入到每个应用程序发布中,作为自动化CI/CD流水线的一部分,这意味着无论应用程序位于软件安全开发生命周期的哪个阶段,都可以自动进行自我保护。**安全测试不再受制于发布计划,并且修复工作根据生产攻击数据进行优先处理。
更智能的响应:洞悉隐藏的运行时攻击
RASP提供相关的网络、应用程序和数据库安全日志,以实现更智能、更快速的响应,并为组织对风险的实际运行时暴露提供强大的可见性。使用RASP进行应用程序安全监控是一项新功能,旨在使企业能够实时确定哪些应用程序实际上正在受到攻击(以及如何受到攻击),有效改进风险管理和修复工作。简而言之,通过RASP进行应用程序监控回答了以下问题:
图2 RASP对应用运行状况进行监控
总结
本文旨在帮助安全决策者对RASP解决方案的能力进行批判性思考,将RASP与其他工具(例如WAF、渗透测试、应用程序安全测试等)进行比较,当然并非所有RASP解决方案都是相同的;每种解决方案提供不同级别的可见性、性能、可扩展性、准确性以及易于实施/维护。
最后,青藤基于多年技术创新优势及丰富的实战经验积累,自主研发出一款RASP产品,将于2024年4月25日正式发布,有兴趣读者可以点击预约直播观看。
点击预约发布会
-完-
热门动态推荐