运行时应用自我保护(Runtime application self-protection,RASP),这个关键技术和IAST是一样的,也是通过插桩技术,持续地从内部监控你应用中的代码和数据流。IAST是发现应用中存在的漏洞,RASP是发现应用运行时发生的攻击,在发现攻击后,通过中断后续程序运行,来保护应用。
例如:黑客发起一次SQL注入攻击,通过在某个参数中,嵌入攻击字符实现对数据库的攻击。RASP在应用中监控数据流入,发现其并没有做安全的处置,该数据参与SQL命令的拼接,在SQL命令发往数据库执行时,RASP判断其是SQL注入攻击,停止往数据库发送SQL命令,保护应用遭受损失。这就是RASP完整发挥作用的过程。实际产品中,RASP可以配置为监控模式和防护模式:监控模式就是发现后,并不停止应用的运行,只是进行攻击告警;防护模式则停止应用运行,起到防护作用。
事实上,先有RASP后有IAST。就是把RASP的监控模式发展成为以发现漏洞为主要目的检测形式,就形成IAST。
RASP侵入性更强,它注入代码,干预程序的执行。从开发团队角度思考,他们会认为这将失去对程序和代码的控制。因此,不是从开发团队自己去发起的RASP,通常都会遭到开发团队的抵制,导致运行效果不佳。
理论上,所有的渗透测试工具(如系统漏洞扫描、sqlmap等)都可以开发上线时的安全检测工具,但对于安全团队来说,还是更愿意把重点放在上线前检测的工具叫开发安全检测工具,因此本文就不把这些工具列入范围。
后记
《开发安全铁三角丛横谈》陆陆续续、唠唠叨叨了三个月,把我在开发安全方面的一些实践体会给大家整体介绍一下,但也不是很体系,毕竟是实践科学。感谢各位读者的陪伴,希望大家成为开发安全领域的专家,谢谢各位!!
原文始发于微信公众号(国舜股份):专栏特辑 | 开发安全铁三角纵横谈(十九)大结局
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
点赞
https://cn-sec.com/archives/1433078.html
复制链接
复制链接
-
左青龙
- 微信扫一扫
-
-
右白虎
- 微信扫一扫
-
评论