静态应用安全测试 SAST 与动态应用安全测试 DAST 有何区别?

1. 概术

由于安全事件的数量不断增加,各组织日益重视应用安全。他们希望识别应用中的漏洞,并提早降低风险。当前有两种不同类型的应用安全测试技术,即静态应用安全测试(SAST) 和动态应用安全测试 (DAST)。虽然这两种测试方法都能识别应用中的安全漏洞,但它们却又截然不同。在实际应用中,一般会采用两种方法相结合的方式来最大程度地发现和修复应用程序中的漏洞。

2. SAST技术简介

SAST(静态应用程序安全测试)是一种通过对源代码进行分析来发现应用程序中存在的安全漏洞的技术。

SAST工具会检查应用程序的源代码并尝试找出其中的安全漏洞,例如缓冲区溢出、代码注入、身份验证和访问控制问题等。

大家常用的代码扫描工具Coverity、Fortify、CodeQL等都采用了SAST技术。

若想了解关于CodeQL的内容,可以参阅博主前期文章:

3. DAST技术简介

DAST(动态应用程序安全测试)是一种在运行应用程序时通过模拟攻击来发现漏洞的技术。

DAST工具会模拟攻击,向应用程序发送请求并检查响应,以确定是否存在漏洞。这种方法可以找到一些SAST无法发现的漏洞,例如依赖性注入和会话固定等

AWVS、Nessus、Burp suite等工具都是采用了DAST技术。

4. SAST vs DAST

4.1 区别

SASTDAST
有源代码,属于白盒测试无源代码,属于黑盒测试
在软件开发生命周期SDLC的左侧,修复漏洞成本低在软件开发生命周期SDLC的右侧,修复漏洞成本高
不运行,无法发现运行时问题可以发现运行时问题
一般适用于所有软件类型一般仅适用于Web应用、服务

在这里插入图片描述

4.2 联系

SAST和DAST技术一般组合使用,在深入测试过程中两种技术均不可缺少。

5. 总结

总的来说,SAST和DAST都是很重要的应用程序安全测试技术,它们各自有其优缺点。在实际应用中,一般会采用两种方法相结合的方式来最大程度地发现和修复应用程序中的漏洞。

6. 参考链接


在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈安全

点赞收藏也是赞赏~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值