UI はローカライズ済みです。スキルの紹介と説明文書は選択した言語へ AI が自動翻訳し、コード・コマンド・パス・専門用語は原文のままです。原作者の文書が優先されます。
スキルを探す
生産性・共同作業 · SKILL.md

analyzing-powershell-script-block-logging

analyzing-powershell-script-block-logging

从 EVTX 文件中解析 Windows PowerShell 脚本块日志(事件 ID 4104),以检测混淆命令、编码载荷和离地攻击技术(living-off-the-land)。使用 python-evtx 提取并重建多块脚本,通过熵分析和模式匹配检测 Base64 编码命令、Invoke-Expression 滥用、下载植入器(download cradles)和 AMSI 绕过尝试。

Independent GitHub snapshot · Automated classification · Original documentation governs

スキルの説明

GitHub

name: analyzing-powershell-script-block-logging description: >- 从 EVTX 文件中解析 Windows PowerShell 脚本块日志(事件 ID 4104),以检测混淆命令、编码载荷和离地攻击技术(living-off-the-land)。使用 python-evtx 提取并重建多块脚本,通过熵分析和模式匹配检测 Base64 编码命令、Invoke-Expression 滥用、下载植入器(download cradles)和 AMSI 绕过尝试。 domain: cybersecurity subdomain: security-operations tags: [analyzing, powershell, script, block] version: "1.0" author: mahipal license: Apache-2.0

使用说明

  1. 安装依赖: pip install python-evtx lxml
  2. 收集 PowerShell 操作日志: Microsoft-Windows-PowerShell%4Operational.evtx
  3. 使用 python-evtx 解析事件 ID 4104 条目,提取 ScriptBlockText、ScriptBlockId 以及 MessageNumber/MessageTotal,用于多块脚本重建。
  4. 应用检测启发式规则:
    • Base64 编码命令(-EncodedCommand、FromBase64String)
    • 下载植入器(DownloadString、DownloadFile、Invoke-WebRequest、Net.WebClient)
    • AMSI 绕过模式(AmsiUtils、amsiInitFailed)
    • 混淆指标(高熵、反引号插入、字符串拼接)
  5. 生成报告,包含重建脚本、风险评分和 MITRE ATT&CK 映射。
python scripts/agent.py --evtx-file /path/to/PowerShell-Operational.evtx --output ps_analysis.json

示例

检测编码命令执行

import base64
if "-encodedcommand" in script_text.lower():
    encoded = script_text.split()[-1]
    decoded = base64.b64decode(encoded).decode("utf-16-le")

重建多块脚本

拆分在多个 4104 事件中的脚本共享一个 ScriptBlockId。按 MessageNumber 顺序拼接各块以恢复完整脚本。

保存したスキル