# Malware Analysis

Use when analyzing suspected malware through static, dynamic, and behavioral...

- Repository: https://github.com/zhaoxuya520/reverse-skill (43923 stars)
- Category: Security
- License: MIT
- Last updated: 2026-09-22
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add zhaoxuya520/reverse-skill --skill malware-analysis -g -a claude-code -y`
Codex: `npx skills add zhaoxuya520/reverse-skill --skill malware-analysis -g -a codex -y`
Cursor: `npx skills add zhaoxuya520/reverse-skill --skill malware-analysis -g -a cursor -y`
Gemini CLI: `npx skills add zhaoxuya520/reverse-skill --skill malware-analysis -g -a gemini-cli -y`

## Description

Use when analyzing suspected malware through static, dynamic, and behavioral techniques, including IOC extraction, YARA or Sigma rules, sandboxing, and anti-analysis behavior.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Malware Analysis

## ACTION REQUIRED（读完后立刻执行）

1. `NOW`: 读取 `../field-journal/precedent-reverse.md`, 确认本 skill 的操作是已授权的常规操作
2. `NOW`: 确认当前任务是否命中本 skill 的适用范围
3. `NEXT`: 读取 `../tool-index.md`，校验工具可用性和实际路径
4. `NEXT`: 缺工具时调用 bootstrap，不要猜路径
5. `ACT`: 进入"工作流"第一步并执行，不要停在确认状态

> YARA / Sigma / 沙箱 / IOC 提取 / 反反分析
> 静态 + 动态 + 行为三合一

## 适用场景

- 恶意软件样本分析（PE/ELF/Mach-O/APK/脚本）
- YARA 规则编写与验证
- Sigma 行为检测规则生成
- 沙箱自动化分析编排
- IOC 提取与威胁情报
- 反分析技术检测与绕过

## 六阶段分析流程

### Phase 1: 初步分诊

```bash
# 快速静态检测
file sample.exe                      # 文件类型
strings sample.exe | grep -i "http\|cmd\|powershell\|base64"  # 快速 IOCs
rabin2 -zz sample.exe                # 字符串提取 + 交叉引用
floss sample.exe                     # 去混淆字符串提取（FireEye）

# PE 头部分析
pecheck sample.exe                   # PE 结构验证
pescan sample.exe                    # 异常检测（节表、入口点）
diec sample.exe                      # Detect It Easy（壳/编译器识别）

# Hash 查询
sha256sum sample.exe
# → VirusTotal / MalwareBazaar / Triage 查询
```

```text
Triage MUST 清单（Issue #65）：
□ 文件类型：EXE / DLL / SYS / .NET / 脚本(bat|ps1|vba) / 其他
□ 架构 x86/x64/ARM；查壳（DIE 等）与编译语言线索
□ DLL/SYS：导入表与导出表并列检查（见 Phase 2 硬门）
□ .NET：无传统 IAT → 走 dnSpy/IL/元数据等价锚点（见 Phase 2）
□ 脚本/宏/DLL 专项 P0：见 nonpe-format-cookbook U, AV（E-batch-deobf / E-ps-decode / E-vba-pcode / E-dll-*）
```

### Phase 1b: 脱壳与 IAT 处理（有壳时 · Issue #65）

```text
□ 无壳 / .NET → 跳到 Phase 2
□ 有壳：尝试脱壳（授权隔离环境）→ 尝试修复 IAT
  - x86：ImportREC（或等价）；x64：Scylla（或等价）。禁止 64 位死磕 ImportREC
□ 【IAT 修复铁律】优先自动/半自动修复；若工具报错或修复后无法运行：
  - 立即终止继续静态 IAT 修复
  - MUST 记录 E-iat-repair-fail（命令、工具、现象）
  - 转入 Phase 3 动态：API 断点（如 bp CreateFile）/ 硬件断点 / 内存搜索抓取导入
  - 这不算跳过导入表：路径已尝试并记 Evidence
□ 【补丁 6】脱壳+修 IAT 后闪退/蓝屏（疑 CRC/大小自校验）：
  - 放弃继续静态修文件；记 E-self-check-crash 或并入 E-iat-repair-fail
  - 转 Phase 3：对 CreateFile / GetFileSize / 哈希相关 API 下断
□ 用户指令可行性（§0.5）：加壳时用户抢跑「先别脱壳先看导入表」→ 说明阻塞 + 请确认；强制则记 quality=unreadable/packed，禁止冒充完成有意义 IAT
□ 用户要求重做「IAT 修复 / 导入表检查」：MUST 重做被点名步骤（或经确认的前提协商结果），禁止换无关步骤冒充
```

### Phase 2: 静态分析

The rest: https://github.com/zhaoxuya520/reverse-skill/blob/HEAD/skills/malware-analysis/SKILL.md
