用途:面向安全运营与事件响应场景,解析 Windows PowerShell 脚本块日志(Event ID 4104),从 EVTX 文件中提取脚本内容,检测混淆命令、编码载荷和就地取材技术,并生成含风险评分与 MITRE ATT&CK 映射的报告。
主要能力:使用 python-evtx 解析 4104 事件,提取 ScriptBlockText、ScriptBlockId 及 MessageNumber/MessageTotal,支持按 MessageNumber 顺序拼接同一 ScriptBlockId 的多段脚本以还原完整脚本;应用检测启发式规则,包括 Base64 编码命令(-EncodedCommand、FromBase64String)、下载载荷(DownloadString、DownloadFile、Invoke-WebRequest、Net.WebClient)、AMSI 绕过模式(AmsiUtils、amsiInitFailed)以及高熵、插入反引号、字符串拼接等混淆指标。
使用方式:先安装依赖 pip install python-evtx lxml;收集 Microsoft-Windows-PowerShell%4Operational.evtx 日志;运行 python scripts/agent.py --evtx-file /path/to/PowerShell-Operational.evtx --output ps_analysis.json 生成分析结果。
适用场景:安全事件调查、检测规则与威胁狩猎查询构建、SOC 分析流程、验证相关攻击技术的监控覆盖。
限制:需具备安全运营基础、Python 3.8+ 环境及测试或实验环境,并须获得相应授权;具体检测效果与覆盖范围资料未提供。