文章目录[隐藏]
转载 21 / 27
- 【转载】unidbg hook 使用大全
- 【转载】ida 基本使用 常用快捷键
- 【转载】Frida和调试器共存的问题
- 【转载】Charles抓包Android最佳流量转发APP
- 【转载】安卓自定义代码调用系统函数并编译so记录
- 【转载】jnitrace 手机卡死黑屏问题解决
- 【转载】Unidbg SO 逆向入门实战教程一 OASIS
- 【转载】Unidbg SO 逆向入门实战教程二 calculateS
- 【转载】Unidbg SO 逆向入门实战教程三 V2-Sign
- 【转载】Unidbg SO 逆向入门实战教程四 mfw
- 【转载】Unidbg SO 逆向入门实战教程五 qxs
- 【转载】Unidbg SO 逆向入门实战教程六 s
- 【转载】Unidbg SO 逆向入门实战教程七 main
- 【转载】Unidbg SO 逆向入门实战教程八 文件读写
- 【转载】Unidbg SO 逆向入门实战教程九 blackbox
- 【转载】Unidbg SO 逆向入门实战教程十 simpleSign
- 【转载】android app 加密参数分析研究 hash aes
- 【转载】第一讲——从黑盒攻击模型到白盒攻击模型
- 【转载】第二讲——白盒加密攻击方法的选择
- 【转载】第三讲——差分故障攻击的原理
- 【转载】第四讲——差分故障攻击的工具链
- 【转载】第五讲——使用源码进行DFA攻击
- 【转载】第六讲——使用Frida进行DFA攻击
- 【转载】第七讲——使用Unidbg进行DFA攻击
- 【转载】第八讲——案例
- 【转载】猿人学 - app 逆向比赛第四题 grpc 题解
- 【转载】猿人学 - app 逆向比赛第五题双向认证题解
说说在前面
本文转载龙哥星球 白盒 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 一样,都是非常好的方案,也是系列文章介绍的重点。
三、尾声
下一篇我们从源码这个方案开始处理。