z9是一款功能强大的PowerShell恶意软件检测与分析工,该工具可以帮助广大研究人员从PowerShell日志的事件记录中检测基于PowerShell实现的恶意软件组件。
由于该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/Sh1n0g1/z9.git
(向右滑动,查看更多)
然后切换到项目目录中,使用pip工具和项目提供的requirements.txt安装该工具所需的其他依赖组件:
cd z9
pip install -r requirements.txt
(向右滑动,查看更多)
usage: z9.py [-h] [--output OUTPUT] [-s] [--no-viewer] [--utf8] input
positional arguments:
input 输入文件路径
options:
-h, --help 显示工具帮助信息和退出
--output OUTPUT, -o OUTPUT
输出文件路径
-s, --static 启用静态分析代码
--no-viewer 禁止在Web浏览器中打开JSON查看器
--utf8 以UTF-8编码读取脚本文件
(向右滑动,查看更多)
python z9.py <input file> -o <output json>
python z9.py <input file> -o <output json> --no-viewer
(向右滑动,查看更多)
参数解析:
参数命令 | 命令介绍 |
input file | 从事件日志eventlog中导出的XML文件路径 |
-o output json | 存储z9分析结果的文件名 |
--no-viewer | 不打开查看器 |
命令参考样例:
python z9.py util\log\mwpsop.xml -o sample1.json
(向右滑动,查看更多)
python z9.py <input file> -o <output json> -s
python z9.py <input file> -o <output json> -s --utf8
python z9.py <input file> -o <output json> -s --no-viewer
(向右滑动,查看更多)
注意:该方法只会对目标执行静态分析,在遇到样本代码经过模糊处理的情况时,可能提供的结果不一定正确。
参数解析:
参数命令 | 命令介绍 |
input file | 要分析的PowerShell文件路径 |
-o output json | 存储z9分析结果的文件名 |
-s | 执行静态分析 |
--utf8 | 当输入文件编码为UTF-8时需要指定该参数 |
--no-viewer | 不打开查看器 |
命令参考样例:
python z9.py malware.ps1 -o sample1.json -s
(向右滑动,查看更多)
1、右键点击并整合该注册表文件:https://github.com/Sh1n0g1/z9/blob/main/util/enable_powershell_logging.reg;
2、重启PC;
3、所有的PowerShell执行此时都会在事件日志中被记录;
1、执行该批处理文件:https://github.com/Sh1n0g1/z9/blob/main/util/collect_psevent.bat;
2、XML文件将会在util/log目录中被创建;
3、z9工具支持解析这些XML文件;
以“管理员权限“执行该批处理文件:https://github.com/Sh1n0g1/z9/blob/main/util/clear_psevent.bat
本项目的开发与发布遵循MIT开源许可证协议。
z9:https://github.com/Sh1n0g1/z9
【FreeBuf粉丝交流群招新啦!
在这里,拓宽网安边界
甲方安全建设干货;
乙方最新技术理念;
全球最新的网络安全资讯;
群内不定期开启各种抽奖活动;
FreeBuf盲盒、大象公仔......
扫码添加小蜜蜂微信回复“加群”,申请加入群聊】
https://z9.shino.club/