一款在 CyperCamp 2017 黑客松期间开发的恶意软件(网络)扫描器
目前,某些功能适用于任何类型的网站(自定义或CMS),而某些功能仅适用于特定平台:
要在一台电脑上安装 masc,您可以简单地克隆此仓库。 您也可以下载最新的 release,解压后尝试。或者您可能更倾向于使用 pip 安装('pip3 install masc')。
运行前请查看 要求。
如果您使用的是 Debian Linux,请先查看 此说明。
如果您使用的是 Mac OSX,请先查看 此说明。
masc 仅已在 Linux 和 Mac OSX 平台上测试过。它应该能在 Windows 下运行,但我尚未尝试。
首先请注意,此工具是在 Linux 和 Mac OSX 环境下开发的,并且目前仅在这些操作系统上进行过测试
santi@zenbook:$ pip3 install python-magic yara-python watchdog termcolor pypandoc progress pyclamd
在我的笔记本上,升级到 Debian testing 后,masc 开始显示一个与 Yara 相关的错误
OSError: /usr/lib/libyara.so: cannot open shared object file: No such file or directory
在尝试了网上找到的许多解决方案后,我发现该文件在我的电脑上位于 /usr/local/lib/python3.5/dist-packages/usr/lib,因此我从该路径创建了一个符号链接到 /usr/lib
santi@zenbook:$ ln -s /usr/local/lib/python3.5/dist-packages/usr/lib/libyara.so /usr/lib/libyara.so
现在,masc 和 Yara 库运行起来没有任何问题。
masc 在 Linux 下开发,但已在 Mac OSX 下测试过。无论如何,它应该能在任何类 Unix 操作系统下无问题运行。
特别地,在 Mac OSX 中,我注意到需要安装 Homebrew 才能正确使用 python-magic 库(作为 libmagic)。请先查看上述 brew 主页链接,然后您可以像下面这样安装:
santi@zenbook:$ brew install libmagic
另外,在我的电脑上,我必须更改 masc.py 脚本的第一行。Python3 安装在 /usr/local/bin 下,并且不允许从 /usr/bin 创建符号链接。
将 masc.py 中的第一行
#!/usr/bin/python3
改为这一行
#!/usr/local/bin/python3
无论如何,您始终可以使用 Python 解释器运行 masc,而不是直接运行脚本:
santi@zenbook:$ python3 masc.py
usage: masc [-h] [-af FILENAME] [--aw STRING] [-cc] [-c] [-l] [-b] [-m]
[-n NAME] [-p PATH] [-r] [-s] [-t {wordpress,drupal,custom}]
optional arguments:
-h, --help 显示此帮助信息并退出
-af FILENAME, --add-file FILENAME
向字典中添加一个可疑文件
-aw STRING --add-word STRING
向字典中添加一个可疑内容
-cc, --clean-cache 清理 masc 缓存(缓存和日志文件,不包括备份)
-c, --clean-site 清理网站(并采取一些额外措施向攻击者隐藏信息)
-l, --list-backups 列出本地备份
-b, --make-backup 创建当前安装的本地备份
-m, --monitor 监控网站以检测变更
-n NAME, --name NAME 分配给被扫描安装的名称
-p PATH, --path PATH 网站安装路径
-r, --rollback 恢复本地备份
-s, --scan 扫描网站的恶意软件
-t {wordpress,drupal,custom}, --site-type {wordpress,drupal,custom}
您想要扫描的网站类型:wordpress,
joomla, drupal 或 magento
您可以对网站安装执行的操作有:
并且您需要考虑,如果您想对某种网站安装执行某些操作,则必须指定类型(-t 或 --type)和路径(-p 或 --path)。
例如,如果您有一个 WordPress 安装位于 /var/www/html,并且想要完全扫描它:
santi@zenbook:$ ./masc.py --scan --site-type wordpress --path /var/www/html
并且如果您想要执行清理操作(例如移除某些恶意软件):
santi@zenbook:$ ./masc.py --scan --site-type wordpress --path /var/www/html --clean-site
在 samples 压缩文件中有两个被黑网站的示例:
此外,Docker Hub 上还有一个用于测试的仓库 masc-wordpress
您可以在 wiki 上找到关于如何使用 masc 的教程
如果您想为此项目做出贡献,请查看 wiki。 那里有一个 如何为此项目做贡献 部分
感谢 OWASP WebMalwareScanner 提供的一些想法 以及包含校验和与 YARA 规则(以及如何加载它以协同工作)的特征数据库。
Santiago Faci [email protected]