运行时应用程序自我保护

了解RASP如何在应用程序处于软件开发生命周期时阻止潜在的恶意活动.

Rapid7 Research: DAST + AI

What is RASP?

运行时应用程序自我保护(RASP)工具在应用程序处于生产状态时阻止潜在的恶意活动. RASP在运行时监视公司的应用程序, 分析它的行为以及行为发生的环境. 如果RASP检测到安全事件,例如试图运行shell, open a file, or call a database, 它将自动尝试终止该操作.

RASP can ward off major forms of web application attacks such as cross-site scripting (XSS) and SQL injection (SQLi) 以及企图接管账户和其他零日漏洞. RASP对于拥有精益安全资源的企业也很有用,因为它可以在不需要人工干预的情况下自动阻止攻击.

随着对web应用程序的攻击不断增加, 企业发现正确保护所有应用程序是一项挑战, 其中一些可能包含未在早期识别或减轻的漏洞 software development lifecycle (SDLC) or through various types of application security testing. 这就是为什么在应用程序本身中包含保护可以帮助公司更好地平衡安全需求和及时推出应用程序的必要性. 

Key Benefits of RASP

RASP的一个关键优点是它可以实时检测和阻止对应用程序的攻击. 因为RASP在运行时在应用程序中发挥作用, 它可以看到应用程序的实际行为. 而不是基于分析预设签名或已知模式 commonly known attacks, as a web application firewall (WAF) RASP能够查找应用程序中发生的可疑操作吗. 

这减少了误报和waf通常产生的噪声, 提醒安全团队注意实际的恶意活动,使其不必猜测随机可疑网络事件的影响. By providing more accurate alerts, RASP还使安全团队能够专注于战略安全优先事项. RASP can also issue user warnings, 教育那些无意中提出危险请求的合法用户,告诉他们请求被拒绝的原因.

因为RASP具有了解应用程序运行时上下文的优势, 它可以提供更适合应用程序特定需求的安全性——所有这些都不需要更改应用程序代码.

Unlike web application firewalls (WAFs), 哪一种对边界上的流量和内容进行过滤,但对可能在边界内发生的活动没有可见性, 即使在攻击者突破外围防御之后,RASP仍然可以保护应用程序免受攻击. 在一个日益复杂的环境中,多个端点可能会受到损害, 这对于组织的应用程序安全性来说是一项有价值的资产. 

How RASP Works

As Gartner explains, RASP是“构建在应用程序运行时环境上或链接到应用程序运行时环境中的安全技术”, 并且能够控制应用程序的执行, 检测和防止实时攻击.通常通过放置在服务器中的代理, RASP将安全检查添加到运行在那里的应用程序中. 然后,RASP不断评估对这些应用程序的调用,以确保它们是安全的,并且可以继续进行. 

When an apparently unsafe call occurs, RASP steps in and blocks it—for example, 通过终止可疑用户会话或拒绝执行特定应用程序的请求. 这是应用程序层的额外安全层, 特别是当与安全软件开发实践和其他应用程序安全工具相结合时, 能够极大地加强组织的整体应用程序安全性吗. RASP还可以在应用程序环境中发生实时恶意操作时向安全团队提供及时准确的警报, 便于在发生袭击时迅速作出反应.

因为RASP不需要更改应用程序代码, 它不会影响应用程序设计——这意味着公司可以根据需要自由地继续开发和改进应用程序. 如果企业在可预见的未来在其环境中维护应用程序,这可能特别有益.

When used in combination with a WAF, 在识别来自多个来源的可疑活动模式(如僵尸网络攻击)方面,哪种模式通常表现出色, RASP可以提供对组织面临的实际威胁的有价值的实时洞察. While WAF can give you one view, 你需要更深入地了解什么在执行,才能看到全局.

RASP vs. WAF

RASP有时会与它的表亲混淆, the web application firewall (WAF), 但这两种技术实际上是截然不同的. 而WAF则使用基于已知攻击形式的静态规则,持续分析外围的应用程序流量,以查找潜在的恶意活动, RASP阻止恶意活动发生在应用程序本身. 

WAF通常需要一段学习时间才能有效,但仍然可能不够灵活,无法抵御以前从未见过的新形式的攻击, 在WAF尚未收到打击新威胁的新规则的时间窗口期内,企业可能会受到攻击. A RASP, however, 针对应用层的各种攻击提供适应性更强的实时防御. 

Since RASP uses the application itself, 它仍然可以监视和保护应用程序的安全性,即使它不断更新和进一步开发. WAF and RASP can complement one another, 结合各种力量,为企业提供更全面、更健壮的应用程序安全性. waf使您能够看到发送到应用程序的请求类型(例如, 如果有人有可疑的请求模式,比如机器人暴力破解密码,或者有人用Metasploit等工具探测应用程序的漏洞).

另一方面,RASP查看应用程序如何处理这些请求. So, in the case of someone using Metasploit, 应用程序所有者可以看到一个漏洞导致文件被写入到它不应该在的地方, an executable being run on the system, unauthorized SQL access, 或者一些意想不到的资源被加载到网页浏览器端,这可能导致数据泄露. 

3 Tips for Success with RASP

以下是充分利用RASP解决方案的三个技巧: 

1. RASP作为综合应用程序安全程序的一部分效果最好

RASP非常善于抵御多种形式的攻击,例如跨站点脚本和运行时的SQL注入, 但是不应该仅仅依靠它来保护企业免受存在的所有应用程序安全威胁. By adopting a DevSecOps 在这种方法中,安全性在SDLC中向左移动,并确保您有一个全面的应用程序安全性计划, 你更有可能阻止袭击.

这取决于贵公司独特的安全要求, 您还可以选择运行具有内置WAF功能的RASP解决方案,以最大限度地发挥这两个工具提供的优势.

2. 考虑您的RASP解决方案如何与您的DevSecOps生态系统一起工作

As you’re evaluating a RASP offering, 考虑它如何与您已有的其他工具一起工作, particularly DevSecOps systems. 高级RASP工具可能与您现有的工具集成 SIEM, DAST, Orchestration, and ticketing systems, for example. 这种集成允许您的公司通过api合并多个威胁情报馈送, web hooks, 领先的技术使您能够更好地实时监控和阻止威胁.

3. 在实施之前仔细测试您的RASP解决方案

因为RASP与它所监视的应用程序集成得如此紧密, 它有时会导致性能问题. 如果这些问题严重到足以对用户产生影响, 他们可能会抱怨业绩的变化. For this reason, 明智的做法是仔细测试您的RASP解决方案,以确保在您的环境中实现它之前了解它是如何影响应用程序性能的. 

随着攻击者越来越多地瞄准应用程序, 对企业来说,全面采用是必不可少的, 保护客户数据的多层应用程序安全策略. RASP使公司能够在生产中的应用程序中直接嵌入更强的应用程序安全检查, 实时准确检测并阻断潜在攻击. 由于这个原因,RASP可以成为组织的应用程序安全工具包的一个有价值的部分.

Read More About Web Application Security

了解Rapid7的Web应用程序安全产品

DevOps安全:博客的最新消息