CoMisSion 是一个用于快速分析 CMS 配置的工具。该工具:
🔥 注意:CoMisSion 不通过分析源代码来寻找漏洞。漏洞信息来自公共数据库,如 wpvulndb。发现新漏洞不是此工具的目的。
可以生成以下格式的完整报告:
该工具已在 Linux 和 Windows 上测试过。为避免输出混乱,建议在 Windows 上设置 --no-color 选项。
./commision.py -c wordpress -d /cms_dir -o report.xlsx -t XLSX
该工具至少需要 python3.6。
git clone https://github.com/Intrinsec/comission
pip install -r requirements.txt
usage: comission.py [-h] -d DIR -c CMS [-o FILE] [-t TYPE] [--skip-core]
[--skip-plugins] [--skip-themes] [--no-color] [-f CONF]
[--log LOGFILE] [--wp-content WP_CONTENT]
[--plugins-dir PLUGINS_DIR] [--themes-dir THEMES_DIR]
[--major VERSION_MAJOR] [-v VERSION]
[--wpvulndb-token WPVULNDB_TOKEN] [--debug]
CoMisSion 分析使用的 CMS 及插件。
可选参数:
-h, --help 显示此帮助信息并退出
-d DIR, --dir DIR CMS 根目录
-c CMS, --cms CMS CMS 类型(drupal, wordpress)
-o FILE, --output FILE
输出文件路径
-t TYPE, --type TYPE 输出类型(CSV, XLSX, JSON, STDOUT)。默认为 XLSX。
--skip-core 设置此项以跳过核心分析
--skip-plugins 设置此项以跳过插件分析
--skip-themes 设置此项以跳过主题分析
--no-color 不在输出中使用颜色。
-f CONF, --file CONF 配置文件。参见 example.conf。
--log LOGFILE 将日志输出到指定文件。
--wp-content WP_CONTENT
设置此项以强制指定 wp-content 目录位置。
--plugins-dir PLUGINS_DIR
设置此项以强制指定插件目录位置。
--themes-dir THEMES_DIR
设置此项以强制指定主题目录位置。
--major VERSION_MAJOR
使用 --skip-core 参数时,指定核心主版本号(例如 7, 8)。仅适用于 Drupal。
-v VERSION, --version VERSION
指定核心完整版本号(例如 5.5)。
--wpvulndb-token WPVULNDB_TOKEN
设置令牌以请求 wpvulndb API。
--debug 打印调试信息以帮助识别错误。
🔥 为了获取 WordPress 的漏洞信息,你必须设置 --wpvulndb_token 参数。你可以通过 wpvulndb 账号获取一个令牌。
你可以提供一个配置文件。参见 example.conf。
我们尚未发布任何官方镜像。 要配合 Docker 使用该工具,你可以构建一个镜像。在项目文件夹中,使用以下命令构建:
docker build -t isec/comission .
然后运行:
docker run -it --rm -v /TARGET_PATH/:/cms_path/ -v /OUTPUT_DIR/:/output/ isec/comission -d /cms_path/ -c drupal -o /output/test_docker.xlsx -t XLSX
请务必更改路径 "TARGET_PATH" 和 "OUTPUT_DIR" 以匹配你的文件夹。
单元测试位于 tests 文件夹中。启动测试前,你应该创建一个 test-data-set 目录,其中包含 drupal 和 wordpress 子目录,以及一个至少包含 wpvulndb_token 值的 test.conf 文件。
Paul Mars (Intrinsec)
基于 Etienne Boursier (Intrinsec) 的想法。
此工具基于 GPLv3 许可发布。但请注意,该工具使用 wpvulndb API 来收集 WordPress 核心和插件的相关信息。