前置知识: 网络安全

恶意代码分析

00:00
3 min Advanced 2026/6/14

恶意代码分析:静态分析、动态分析、沙箱、逆向工程与恶意软件分类

1. 恶意软件分类

1.1 按行为分类

类型行为示例
病毒感染宿主文件CIH
蠕虫自我传播WannaCry
木马伪装合法软件Emotet
勒索软件加密勒索Ryuk
Rootkit隐藏自身Sony Rootkit
RAT远程控制Gh0st

1.2 按目标分类

类型目标示例
木马网银Zeus
勒索软件数据LockBit
间谍软件信息Pegasus
僵尸网络控制Mirai
APT持续渗透Stuxnet

2. 静态分析

2.1 文件特征

# 文件类型
file malware.exe

# 哈希
sha256sum malware.exe

# 字符串提取
strings malware.exe | grep -i "http\|password\|key"

# PE头分析
python pefile.py malware.exe

2.2 反汇编

工具说明
IDA Pro专业反汇编
GhidraNSA开
Radare2命令
Binary Ninja现代

2.3 签名检测

# YARA 规则
rule Malware_Detector {
    meta:
        description = "Detects known malware"
    strings:
        $s1 = "cmd.exe /c" ascii
        $s2 = { 6A 40 68 00 30 00 00 }
    condition:
        any of them
}

3. 动态分析

3.1 沙箱分析

沙箱
Cuckoo Sandbox
Joe Sandbox商业
ANY.RUN交互
Hybrid Analysis在线

3.2 行为监控

# 进程监控
Process Monitor (ProcMon)

# 网络监控
Wireshark / tcpdump

# 注册表监控
Regshot

# API 调用追踪
API Monitor

3.3 网络行为分析

  • DNS 请求
  • HTTP/HTTPS 通信
  • C2 通信模式
  • 数据外传

4. 逆向工程

4.1 脱壳

工具
UPXupx -d
Themida手动脱
VMProtect困难
ASPack工具

4.2 调试

# x64dbg 调试
1. 设置断点
2. 单步执行
3. 查看寄存器和内存
4. 分析算法逻辑

4.3 反混淆

  • 字符串解密
  • 控制流还原
  • API 调用恢复

5. 勒索软件分析

5.1 常见勒索软件家族

家族加密算法
WannaCryAES+RSA利用EternalBlue
RyukAES-256性攻击
LockBitAES+RSARaaS模式
ContiChaCha8+RSA双重勒索

5.2 分析要点

  • 加密算法和密钥管理
  • 文件扩展名修改
  • 勒索信内容
  • C2 通信方式
  • 是否可解密

6. 威胁情报生产

6.1 IOC 提取

IOC类型示例
文件哈希SHA256
IP地址C2服务器
域名DGA域名
URL下载地址
互斥标识
注册表键持久化

6.2 情报共享

  • STIX/TAXII 标准
  • MISP 平台
  • OpenIOC

知识检测

学习进度

-- 已学文档
--% 知识覆盖率

学习推荐

专注模式