SCodeScanner 代表源代码扫描器,用户可以通过它扫描源代码以发现关键漏洞。该扫描器的主要目标是在代码发布到生产环境之前,发现源代码中的漏洞。
发布新版本和公告的网站:https://scodescanner.info/
pip3 install -r requirements.txt python3 scscanner.py --help python3 scscanner.py php --helpSCodeScanner 是一个完全开源、基于命令行的 Python 工具,用于识别代码中的漏洞。它设计为易于使用,并提供许多区别于其他工具的特性,包括:
更少的误报:SCodeScanner 包含用于消除误报的标志,仅报告确认存在的漏洞。
自定义 semgrep 规则:SCodeScanner 与 semgrep 协同工作,但创建自己的规则,这有助于避免误报和耗时的扫描。
基于命令行的 Python 工具:SCodeScanner 是一个基于命令行的 Python 工具,适合各种技术背景的用户使用。许多用于识别漏洞的开源工具是基于图形界面的,而 SCodeScanner 的命令行接口使其可以轻松从终端运行。
快速扫描:SCodeScanner 的规则设计为同时检查多个漏洞,这减少了规则需要处理的文件数量,从而加快扫描过程。
可见性:SCodeScanner 支持 JIRA、SLACK 集成,通过将文件发送到 Slack 群组或创建 Jira 问题,使识别到的结果具有可见性。
能够跟踪用户输入变量:SCodeScanner 可以识别用户输入变量在一个文件中定义但在另一个文件中不安全使用的情况。
易于阅读的 JSON 输出:SCodeScanner 以 JSON 格式提供结果,易于阅读并可用于进一步分析。
SCodeScanner 因在多个 CMS 插件中发现漏洞而获得了 5 个 CVE。
--folder:该标志用于指定实际代码所在的文件夹。这是必需的标志。
--file:如果要扫描单个文件,则需要此标志。
--check:此标志将在识别漏洞后运行误报移除程序。它会检查用户输入是否真实。该标志还会创建一个新的修改后的 JSON 文件,其中移除了所有误报。但需要注意的是,该工具会同时保留原始文件和修改后的文件。
--json:负责生成 JSON 文件作为输出。
-o:此标志将创建一个包含输出发现结果的文本文件。其目的是生成一个易于阅读的人类可读文件。此标志是可选的。
--jira:负责将输出文件发送到 JIRA 实例。(需要在 config.json 文件中添加配置。)此标志是可选的。
--slack:负责将输出文件发送到 SLACK 实例。(需要在 config.json 文件中添加配置。)此标志是可选的。
一些酷炫的功能即将推出。
我非常期待听到您对此工具的反馈。如果发现任何问题,请提交 issue。如果您有改进,请提交 PR。