白帽黑客通过大量GPU枚举4500万亿个偏移值帮助客户暴力破解勒索软件恢复数据
在 99.9% 的情况下如果你被勒索软件感染那想要恢复数据是不可能的,除非你向黑客支付赎金获得解密密钥,只不过通常情况下黑客索要的赎金都非常高昂。勒索软件加密数据的原理主要采集部分数据作为种子然后再采用高强度算法进行加密,希望通过暴力破解获得解密密钥是个希望渺茫的事情,除非在机缘巧合下你发现勒索软件存在漏洞。
白帽黑客 TinyHack 日前在博客分享帮助客户恢复被勒索软件 Akira 加密的 Linux/VMware ESXi 系统数据,由于尝试利用漏洞和进行暴力破解,最终 TinyHack 花费大约 20 天才完成解密。
当然这里也存在机缘巧合的事情,那就是客户感染的勒索软件 Akira 变体版本存在缺陷,这个缺陷并不算漏洞,而是 Akira 采用的加密方式不合理,在找到缺陷后 TinyHack 与朋友到数据中心里找到被感染的硬件进行测试,总体来说思路是可行的。
进行暴力破解的关键步骤是计算偏移值和便宜范围,在实际操作过程中需要枚举的偏移值有 4500 万亿对,如果使用每秒能够进行加密 5000 万次的系统,完成这些加密对的暴力破解需要几百天。
如果使用更多 GPU 那就可以提高算力从而加快破解速度,TinyHack 还对算法进行优化显著提高了破解速度,接下来就是考虑成本方案,看看哪种方案最终成本更低。
最终的破解速度:
在 NVIDIA RTX 3090 上经过优化的算法可以实现每秒 15 亿次 KCipher2 加密
对于使用单个偏移测试 10 亿个值需要 0.7 秒,包括检查匹配的时间,每批最多可以匹配 32 个
在单个 GPU 上测试 200 万个偏移大约需要 16 天,所以在 16 个 GPU 上只需要 1 天
如果换成 RTX 4090 那速度可以提高 2.3 倍,但 RTX 4090 的价格比 RTX 3090 高出 60%
使用 RTX 4090 相同过程在单个 GPU 上需要 7 天,使用 16 块 4090 大约需要 10 小时
当然直接购买 RTX 4090 进行破解那成本太高了,所以客户刚开始的考虑是通过 Google Cloud 租用一个月的 GPU 进行破解,但这个方案大约需要花费数万美元。
最终 TinyHack 找到价格更便宜的替代方案,Runpod 和 Vast.ai,包含所有试验和测试,最终成本是 1200 美元,找到密钥后还需要获取文件的时间戳、获取文件的密文和明文等,不过最后这个数据中心客户大量被加密的 VMDK 磁盘被解密。
有兴趣的网友可以点击这里查看原文:https://tinyhack.com/2025/03/13/decrypting-encrypted-files-from-akira-ransomware-linux-esxi-variant-2024-using-a-bunch-of-gpus/