首页 > 解决方案 > 原始代码的 SAST 更好或编译代码

问题描述

从安全代码审查 (SAST) 的角度来看,我需要通过自动化工具扫描哪些代码?原始代码还是编译代码?

标签: securitystatic-analysisstatic-code-analysis

解决方案


我会说这取决于你想找到什么。分析编译代码有机会找到生成的代码片段并对其进行分析。它也可能更容易一些,因为编译的代码必须在语法上是正确的。要执行数据流分析,该工具实际上需要先编译代码本身。我最喜欢的免费代码扫描工具(Find Security Bugs 和 OWASP Dependency Check)适用于二进制文件。

另一方面,您可以在源代码上使用 grep 和 regex。您可以看到所有可能从二进制文件中优化的 FIXME 和 TODO 注释和变量。我的一位同事编写了一个基于一组正则表达式来查找安全漏洞的工具,他为自己的所作所为感到非常自豪。源代码分析也不会受到二进制文件混淆的影响。


推荐阅读