用途:对目标应用中的密码学实现进行进攻性分析,重点不是攻破数学原语,而是利用开发者误用密码学的方式。把加密数据、签名令牌和哈希值都视为攻击面。
主要能力与流程:先识别密码学触点(Cookie、令牌、API 参数、存储凭据、签名 URL);对算法与模式做指纹识别(密文长度、块对齐、编码层);分类漏洞类型(填充预言、ECB 确定性、弱 MAC 构造、RSA 参数弱点、PRNG 可预测性);选择工具或自定义脚本;执行攻击以解密或伪造;记录弱点、根因与修复路径。
覆盖方向:填充预言攻击(利用 CBC 模下 PKCS7 填充有效性差异,可用 padbuster 自动化或按 Vaudenay 方法自写脚本);ECB 块重排与逐字节解密;Merkle-Damgard 哈希的长度扩展(H(secret||message) 可被扩展,HMAC 不受影响,可用 hashpumpy);RSA 攻击(RsaCtfTool 支持 wiener、smallq、fermat 等,处理小指数、Hastad 广播、Bleichenbacher PKCS#1 v1.5、Coppersmith 部分信息恢复);MT19937 状态克隆与时间种子爆破;逐字节计时侧信道;AES-GCM nonce 重用恢复 GHASH 密钥并伪造标签;弱 KDF 与 PBKDF2 迭代不足检测。
用法示例:padbuster、hashpump、pip install hashpumpy、RsaCtfTool --publickey pubkey.pem --private 等命令保持原样。
适用场景:授权渗透测试、CTF、密码学实现审计与防御检测规则设计。
限制:仅限合法授权环境;实际攻击成功率受网络抖动、oracle 信号质量与目标实现差异影响,计时攻击通常需 50–100+ 样本;资料未提供具体价格、平台支持范围与版本兼容性信息。