【SAST,DAST,IAST】SAST,DAST,IAST区别及原理

本文详细解释了SAST(静态)、DAST(动态)和IAST(交互式)的安全测试方法,以及RASP(运行时应用自我保护)的工作原理。对比了它们的优缺点和适用场景,强调了IAST的优势但指出RASP的发展仍需关注性能消耗。
摘要由CSDN通过智能技术生成

SAST,DAST和IAST到底是什么?

SAST(Static Application Security Testing,静态应用程序安全测试)

SAST(Static Application Security Testing,静态应用程序安全测试)对应用程序源代码执行直接的白盒分析。

分析是在代码的静态视图上运行的,这意味着代码在审查时没有运行。

其他名称:源代码扫描,白盒测试。

SAST的优点:
广泛的编程语言支持;
检出率较高;
可以定位到代码行。

SAST的缺点:
准确性差:优秀SAST产品的误报率也在53%以上*;
无法看到执行流;
通常需要一些定制或调参;
不适用于生产阶段的系统;
通常运行很慢。

常见工具: Checkmarx、Veracode、Fortify

DAST(Dynamic Application Security Testing,动态应用程序安全测试)

与SAST相反,DAST(Dynamic Application Security Testing,动态应用程序安全测试)对应用程序进行黑盒分析。
它们不能访问代码或实现细节。
DAST只检查系统对潜在漏洞测试的请求和响应。换言之,DAST是外部的漏洞扫描程序。

DAST的优点:
独立于应用程序的技术和平台,无需代码细节;
执行相对较快;
误报率较低。

DAST的缺点:
检出率低:优秀的DAST产品检出率也只有18%*;
无法定位到代码行;
使用门槛高,报告通常需要安全专家解读。

常见工具: Burp Suite 、OWASP ZAP、 Netsparker

IAST(Interactive Application Security Testing,交互式应用程序安全测试)

IAST(Interactive Application Security Testing,交互式应用程序安全测试)结合了SAST和DAST的优点。IAST可以像SAST一样看到源代码,也可以像DAST一样看到应用程序运行时的执行流。

IAST的优点:
检出率较高;
误报率较低;
可以在研发测试和生产环境中使用;
实时产生结果;
可以持续检测,对DevOps支持度更高;
即插即用,无需配置或调参;
可以与CI平台集成,创建相互连接的工作流。

IAST的缺点:
需要特定的语言支持

常见工具: Contrast Security、Rapid7、Qualys

我们可以看到,与SAST和DAST类产品相比,IAST类产品拥有明显的优势。
但IAST作为近年来才诞生的热点,其发展还远没有SAST和DAST类产品成熟。
因此如果预算允许,以上这三类应用安全测试产品应该同时应用。

RASP(Runtime application self-protection)运行时应用自我保护

RSAP将自身注入到应用程序中,与应用程序融为一体(可以获取到应用运行时的上下文,根据运行时上下文或者敏感操作,对攻击进行精准的识别或拦截。),实时监测、阻断攻击,使程序自身拥有自保护的能力。
并且应用程序无需在编码时进行任何的修改,只需进行简单的配置即可。

RASP不但能够对应用进行基础安全防护,由于一些攻击造成的应用程序调用栈调用栈具有相似性,还能够对0day进行一定的防护。
除此之外,利用RASP也能够对应用打虚拟补丁,修复官方未修复的漏洞。
或者对应用的运行状态进行监控,进行日志采集。
RASP运行在应用之中,只要检测点选取合理,获取到的payload已经是解码过的真实payload,可以减少由于WAF规则的不完善导致的漏报。

缺陷:性能消耗,RASP带来的性能消耗一般在5%~10%之间。

在这里插入图片描述图片参考:https://blog.csdn.net/weixin_41686586/article/details/114276295

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值