1.3.1 安全研究的核心需求 #
1. 补丁分析 #
漏洞披露流程
│
▼
厂商发布补丁 ──→ 安全研究员分析补丁 ──→ 理解漏洞本质
│
▼
二进制Diff比较
│
▼
定位被修复的代码位置
│
▼
推导漏洞触发条件
│
▼
开发检测规则/利用代码
实际案例:
- CVE-2021-34527 (PrintNightmare):通过二进制diff分析补丁,发现漏洞根因
- CVE-2021-44228 (Log4Shell):对比补丁版本快速理解JNDI注入风险
2. 恶意软件分析 #
恶意软件家族演化追踪
┌─────────────────────────────────────────┐
│ Trojan.Variant.A │
│ │ │
│ ▼ │
│ ┌─────┴─────┐ │
│ │ │ │
│ Variant.B Variant.C │
│ (新C2) (新加密) │
│ │ │ │
│ └─────┬─────┘ │
│ ▼ │
│ Variant.D │
│ (组合+新功能) │
└─────────────────────────────────────────┘
通过二进制diff追踪演化路径
3. 漏洞挖掘 #
- 对比不同版本发现潜在漏洞
- 识别未完全修复的问题
- 发现引入的新漏洞
1.3.2 软件工程需求 #
1. 供应链安全 #
软件供应链风险分析
│
├── 第三方库版本识别
│ └─ 判断是否使用已知漏洞版本
│
├── 代码复用检测
│ └─ 识别许可证违规
│
└── 组件溯源
└─ 确定代码来源
2. 兼容性分析 #
- 判断API兼容性
- 接口变化检测
- 功能回归测试
1.3.3 法律合规需求 #
1. 知识产权保护 #
- 代码抄袭检测
- 商业秘密侵权分析
- 开源许可证合规检查
2. 司法取证 #
- 恶意软件同源分析
- 攻击工具关联分析
- 证据链建立