目前,市面上有许多代码分析工具,但昂贵的费用对于初创公司和个人来说有些难以承受。但以下的免费静态分析工具可以帮助到你。
1、DeepCode
作为一个代码分析工具,DeepCode利用人工智能来帮助清理代码,主要功能是检查代码并突出显示可能容易受到安全漏洞破坏的部分。
使用DeepCode工具,我们可以在达到临界安全级别之前分析用户输入处理。因此,当任何数据在没有安全验证或清除的情况下从一个点移动到另一个点时,该工具会将其标记为受污染的,并向您发出警告。可以标记的问题包括跨网站脚本、SQL注入威胁、远程代码执行以及路径遍历攻击等,
2、RIPS
RIPS通过标记和解析所有源代码文件,来自动检测PHP应用程序中的漏洞。
它能够将PHP源代码转换为程序模型,检测程序流期间用户输入可能污染的敏感接收器,即潜在易受攻击的函数。只有它可以检测到最深层嵌套在代码内部的最复杂的安全错误,准确性极高,是分析代码的最佳选择。
3、Flawfinder
Flawfinder是一个对于初学者来说是个很棒的工具,它能在短时间内效率极高地检查较大的程序,命中密度也高。它通过扫描C或C 源代码,从而快速识别可能的安全漏洞并生成按风险级别排序的报告。作为开源软件提供,能够在程序广泛发布之前快速发现并消除潜在的安全问题。
4、Brakeman
Brakeman是一个静态代码分析器,能够扫描开放源代码漏洞的程序,可在开发过程中的任何阶段扫描Rails应用程序代码以发现安全问题。因为该工具能够查看应用程序的源代码,因此无需设置整个应用程序堆栈即可使用它。在Brakeman扫描应用程序代码后,它会针对所有安全问题生成详细的报告。并且,它的每次检查都是独立执行的,灵活性很强。
5、Fortify
Fortify专注于扫描代码库中的安全漏洞。它几乎涵盖所有编程语言,为你提供解决漏洞的建议,与流行的CI/CD工具轻松集成。它重点关注已知的安全漏洞以及可能存在问题的任何恶意软件或损坏文件的存在。