【转载】第四讲——差分故障攻击的工具链

转载 21 / 27

说说在前面

本文转载龙哥星球 白盒 AES 密码学系列,相关文件代码等,可加入星球下载


一、前言

上一讲中,我们学习了DFA的原理,以及其实现工具phoenixAES。那么问题来了,我们用什么工具实现故障,以及捕获故障密文。

二、方案盘点

2-1 源码

如果我们直接获取到了源码,那当然是最好的,在程序中修改一个字节以及打印结果可以说毫无压力。虽然现实场景中不太可能获取到源码,但是把白盒程序按执行流抠出来,用某种高级语言复写,比如C/Python,那和源码没两样。

有的朋友可能会困惑,既然都抠出代码了,为什么还要还原Key,直接跑不也挺好?这是一个好问题。在有白盒程序源码的情况下,并不特别需要还原出Key,我们可以用这个场景来练习对DFA的掌握程度。

2-2 IDA

使用IDA动态调试配合IDAPython脚本,可以很好的完成需求,但许多样本都会检测和对抗IDA动态调试,因此不是一个特别好的方案。本系列文章不会展开讨论这个方案。

2-3 Frida

Frida 可以很轻松的实现多次执行目标函数、修改 state 一个字节,打印输出等步骤,是最好的办法之一。

2-4 Unidbg

Unidbg 和 Frida 一样,都是非常好的方案,也是系列文章介绍的重点。

三、尾声

下一篇我们从源码这个方案开始处理。

暂无评论
本文作者:
本文链接: https://www.qinless.com/?p=1653
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 qinless 的博客!
100

发表评论

返回顶部