170918 逆向-jeb2动态调试(ciscn-crack.apk)

1625-5 王子昂 总结《2017年9月18日》 【连续第351天总结】
A. jeb2动态调试Android
B.
之前在国赛的时候有一个APKCRACK,当时逆的过程中发现是调用了一个jni方法,so逆出来发现是很复杂的多行处理,最后返回到DEX中的
由于不怎么熟悉so和jni,遂放弃

后来几天看到了WriteUp:

可以看到,程序在取得了用户输入的字符串后,会调用wick.show方法,这个方法会调用jni中的对应函数,该jni函数会开启反调试并给静态变量A、B赋值success和failed。随后会进入simple.check方法开启验证。

这个验证函数非常长,笔者也没看懂。Simple类中有两个字节数组,一个用于存储输入,把它命名为input;另一个数组初始为空,把它命名为empty。

使用jeb2的动态调试功能,把断点下到00000A7A函数的返回指令处,在手机中输入随意字符并点击确定,程序会断在返回指令处。

此时查看empty数组的值,发现疑似ASCII码的数字,转换过来就是flag

虽然模拟器+IDA勉强也可以远程调试,但是由于IDA只能处理so文件,所以整个流程并不完整
这次安卓真机终于到手了,正好看到jeb2对动态调试的能力很强,就拿上次没做完的、简单的CRACK入手吧

jeb2的Debug按钮很好找,只不过窗口里并没有像教程那样显示出来IP、端口和进程来Attch

搜了很久的jeb2的动态调试进程,除了i春秋有付费视频没看到内容以外,其他基本都是介绍静态反编译或是一笔带过动态调试的,没有一个有完整教

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值