- A+
总结了几款针对源代码漏洞检测的传统静态分析工具,包括一些开源和不开源的工具。
1 FlawFinder
简介:该工具用于检查 C/C++ 源代码并按风险等级分类报告可能的安全漏洞(“缺陷”),非常适合在程序广泛发布之前快速发现并消除一些潜在的安全问题。它是免费供任何人使用的开源软件(OSS)。该工具在漏洞检测技术上没有采用任何数据流和控制流分析,只是简单的规则匹配。
2 CppCheck
简介:Cppcheck 是一款用于 C/C++ 源代码的静态分析工具,主要采用流敏感分析进行检测。提供独特的代码分析功能,旨在检测程序中的错误,特别关注未定义行为和危险的编码结构。其目标是尽量减少误报的数量。即使代码中包含非标准语法(嵌入式项目中常见),Cppcheck 也能进行有效分析。它同样是作为免费使用的开源软件。
链接:Cppcheck - A tool for static C/C++ code analysis
3 Checkmarx
简介:Checkmarx是以色列研发的一款代码审计工具,基于.NET开发,只能在Windows下使用。作为商业版代码审计工具。
链接:Appsec Tool - Checkmarx Application Security Testing Solution
4 Fortify
简介:Fortify 静态代码分析工具能精准定位源代码中的安全漏洞根源,优先处理最严重的问题,并提供详细的修复指导。此外,其集中式软件安全管理功能可帮助开发者更快速地解决问题。该工具同样作为商业版静态分析工具。
链接:OpenText Fortify Static Code Analyzer | Static Code Analysis Security
5 RATS
简介:远古级别的代码安全审计工具,在14年就停止了更新。一款用于扫描 C、C++、Perl、PHP、Python 和 Ruby 源代码的审计工具,并标出常见的与安全相关的编程错误,如缓冲区溢出和TOCTOU(检查时间,使用时间)竞争条件。该工具只能对源代码进行粗略分析源代码。 它不会发现所有错误,也会也会发现不是错误的地方。该工具同样作为一款免费开源软件。
链接:Google Code Archive - Long-term storage for Google Code Project Hosting.
6 Coverity
简介:Coverity可以查找并修复跨越多个文件和库(甚至是最大的代码库)的代码质量和安全问题。跟踪并优先处理对您的业务至关重要的问题,这些问题广泛涵盖各种安全和行业标准,包括 OWASP Top 10、CWE Top 25、MISRA、CERT C/C++/Java 等。该工具同样作为商业版静态分析工具。