A08:2025 - 软件或数据完整性故障

💡 学习提示: 本文档介绍 OWASP Top 10 A08 - 软件或数据完整性故障,涉及未验证的代码和数据更新。


📋 风险概述

软件或数据完整性故障 (Software or Data Integrity Failures) 是指未验证软件更新、数据传输或反序列化过程的完整性,导致恶意代码执行的风险。

🟠 危害等级:高危

项目 说明
发生率 1.78%
平均影响 7.34/10

🎯 常见场景

1. 未签名的更新

# 应用自动更新未验证签名
# 攻击者可植入恶意更新

2. 不安全的反序列化

# ❌ 反序列化未信任的数据
import pickle
data = pickle.loads(untrusted_input)  # 可执行任意代码

3. 依赖劫持

# CI/CD 管道从未信任源拉取依赖
# 攻击者注入恶意代码

🛡️ 防御方法

✅ 1. 数字签名验证

# 验证更新包的数字签名
# 使用 GPG 或代码签名证书

✅ 2. 安全的序列化

# ✅ 使用 JSON 而非 pickle
import json
data = json.loads(input)  # 安全

✅ 3. 依赖验证

# 使用锁文件
# 验证依赖哈希值

🔗 参考资料


最后更新:2026-03-10