用途:分析 DRM 系统(Widevine/PlayReady/FairPlay)的组件结构、许可证挑战/响应流程,理解播放器与 CDM(内容解密模块)如何管理密钥并解密内容,识别 CENC 加密媒体(MP4/CMAF)的 PSSH 与加密方案,并在授权环境内做弱点研究。
主要能力:DRM 组件识别(EME API 定位 DRM 类型与 CDM 路径,如 libwidevinecdm.so 的 Initialize、CreateSession、UpdateSession、Decrypt 等导出函数);PSSH 识别(grep -oba 'pssh' sample.mp4,按 SystemID 判 Widevine/PlayReady/FairPlay);许可证流程还原(tshark 抓包、mitmproxy 解密 HTTPS,Widevine 为 protobuf SignedMessage,PlayReady 为 SOAP/XML);解密器与密钥分层分析(设备密钥→内容密钥 CEK→媒体);漏洞定位与负责任披露。
使用方式:静态分析免沙箱,运行 CDM 与抓许可证流量须在受控环境。工具包括 re-ghidra/re-ida 反编译、tshark/mitmproxy 抓包、pip install protobuf、pip install pywidevine(仅自有设备授权研究)。按组件识别、PSSH 识别、许可证流程、解密器分析、弱点定位、报告顺序执行,每步记录证据路径与 sha256。
适用场景:自有内容保护方案、授权测试、CTF 与研究环境。
限制:禁止未授权内容解密、商业 DRM 绕过、密钥提取分发与盗版工具;涉及 DMCA 1201 类反规避法律与平台 ToS。L1 密钥在 TEE 硬件保护,L3 为软件实现;CDM 更新频繁,结论需标注版本与哈希;PSSH v0/v1 布局不同;Widevine 消息外层为 SignedMessage,需先解外层再按 type 选内层 schema。