运行时应用自我保护(RASP):应用安全的自我修养

发布时间:2024-05-20 12:01

应用程序已经成为网络黑客想要渗透到企业内部的绝佳目标。因为他们知道如果能发现并利用应用程序的漏洞,他们就有超过三分之一的机会成功入侵。更重要的是,发现应用程序漏洞的可能性也很大。Contrast Security 调查显示,90%的应用程序在开发和质量保证阶段没有进行漏洞测试,甚至相当一部分应用程序在生产过程中没有受到保护。
 
由于企业中运行着许多有漏洞的应用程序,安全团队面临的挑战是如何保护这些应用程序免受攻击。其中一种方法是让应用程序通过实时识别和阻止攻击来保护自己,这就是被称为运行时应用自我保护(Runtime Application Self-Protection)的技术。
 

什么是 RASP ?

运行时应用自我保护(RASP)这一概念由 Gartner 于2012年提出,这是一项新兴的安全技术,让企业得以阻止黑客入侵企业应用和数据。RASP 技术通常内置在一个应用程序或应用程序运行时环境中,能够控制应用程序的执行,并检测漏洞以防止实时攻击。
 
当应用程序开始运行时,RASP 可以通过分析应用程序的行为和该行为的上下文,保护其不受恶意输入或行为的影响。RASP 通过使应用程序持续检测自身的行为,可以立即识别和缓解攻击,且无需人工干预。
 
无论 RASP 驻留在 server 的什么地方,它都将安全性整合到运行中的应用程序中。它会拦截从应用程序到系统的所有调用,确保它们是安全的,并直接在应用程序内验证数据请求。Web 和非 Web 应用都可以受到 RASP 的保护。该技术不影响应用程序的设计,因为 RASP 的检测和保护功能可以在应用程序所运行的 server 上运行。
 

为什么 RASP 如此重要?

入侵防护系统(IPS)和网络应用防火墙(WAF)等技术通常用于运行时的应用程序保护,但它们在检查网络流量和内容时在线工作。当它们分析进出应用程序的流量和用户会话时,它们无法看到流量和数据在应用内部是如何处理的。由于它们的保护措施往往缺乏会话终止所需的准确性,因此会消耗大量的安全团队带宽,通常只用于告警和日志收集。现在需要的是一种新型的应用保护技术——RASP,它可以驻留在要保护的应用的运行时环境中。
 

应用所面临的安全挑战

在保护 Web 应用和 API 时,通常会面临以下4种常见的安全挑战:
 
1、真实的攻击难以识别。 每个应用程序有其自己独特的漏洞,并且只能被特殊的攻击所利用。对于某个应用来说完全无害的 HTTP 请求,对于另一个应用而言可能会造成毁灭性打击。同时,“在线(on the wire)”的数据可能与它在应用中所显示的不同(被称为“阻抗不匹配”问题)。
 
2、现代应用程序(特别是 API)使用复杂的格式, 如 JSON、XML、序列化对象和自定义二进制格式。这些请求使用除了 HTTP 之外的各种协议,包括 WebSocket,它是由浏览器中的JavaScript、富客户端、移动应用和许多其他源产生的。
 
3、传统的技术防御没有效果。 WAF 通过在 HTTP 流量到达应用服务器之前对其进行分析,完全独立于应用而运作。尽管绝大部分的大型组织都有 WAF,但其中许多企业并没有专业的团队对其进行必要的调整和维护,使其只处于“日志模式”。
 
4、软件正在快速发展,容器、IaaS、PaaS、虚拟机和弹性环境都在经历爆炸性增长。 这些技术使得应用程序和 API 可以快速部署,但同时会将代码暴露给新的漏洞。DevOps 也迅速加快了整合、部署和交付的速度,因此确保在快速发展阶段的软件安全的过程变得更加复杂。
 
幸运的是,运行时应用自我保护(RASP)可以解决其中的许多问题
 

RASP 的工作原理

当 APP 中发生安全事件时,RASP 将会控制该应用并解决问题。在诊断模式中,RASP 只是发布有问题的告警。在保护模式下,它会试图阻止问题指令。例如,它可以阻止对数据库执行看起来似乎时 SQL 注入攻击的指令。
 
RASP 可以采取的其他行动包括终止用户的会话、停止应用程序的执行,或向用户或安全人员发出告警。
 
开发人员可以通过几种方式实现 RASP。他们可以通过包含在应用程序源代码中的函数调用来访问该技术,或者他们可以将一个完整的应用程序放在一个 wrapper 中,从而只需要按下一个按钮就可以保护应用程序。第一种方法更为精确,因为开发人员可以决定他们想要保护 APP 的哪个部分,例如登录、数据库查询和管理功能。
 
无论使用哪种方法,最终的结果都是将 Web 应用防火墙与应用程序的运行时环境绑定在一起。这种与应用程序的密切联系意味着 RASP 可以更精细地调整以满足应用程序的安全需求。
 

RASP 的主要优势

RASP 之所以独一无二是因为它在软件内部工作,而不是作为一个网络设备运行。这使得 RASP 可以利用所有从运行中的应用和 API 中获取的上下文信息,包括代码本身、框架配置、应用程序 server 配置、代码库和框架、运行时数据流、运行时控制流、后端连接等。更多的上下文信息意味着更广泛的保护范围和更好的精确性。
 

RASP 成本更低

  • RASP 解决方案可以快速高效地阻止攻击直到底层漏洞得到解决
  • 与 WAF 相比,它们的部署成本和运维更低
  • 它们部署在已有的 server 上,避免了额外的支出
  • RASP 技术会观察应用程序实际执行的操作,因此不需要相同类型的调整、模型构建、验证或人力资源
     

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号