-
-
[分享]第2 变形金刚,小白定位Transformers关键算法位置
-
2019-3-14 10:53
7051
-
[分享]第2 变形金刚,小白定位Transformers关键算法位置
拿到手APK,首先就先反编译大概看下JAVA代码
可以看到OnCreate中给登录按钮绑定一个onClick函数,看到函数中获取了用户名密码后直接调用login
接下来找到login,一看到equals和reverse
原来是这样,我已经完全搞懂了.jpg
不就是用户名取反得到密码
结果输入,弹出Toast显示error,这时候再看代码,发现很诡异的事,代码中没有error相关字符串
这时候就可以考虑到可能是so文件做了手脚,查看lib目录,只有一个so文件,拖进IDA看看
decode看上去很可疑,于是就进去,F5一看,解密了一些字符串
这种解密还是挺简单的,最后解密出三个字符串和一个疑似函数声明的东西
两个字符串字符串可能是解密需要用到的字符串先不管
看到AppCompiatActivity就能大概猜测出是修改了运行的Activity
包内找到该路径,反编译一看代码就知道找对地方了
可以看出主要逻辑为先通过native函数eq进行比较,如果正确则再调用dec进行解密,最后在弹出Toast显示"flag{解密后的数据}"
但是so文件中并没有找到eq函数怎么办呢,这一步也是卡了很久,因为对elf文件不熟悉和知识的缺失,最后是偶然IDA查看字符串
可以看出{9*8……和dbeafc24……两个字符串非常可疑,Ctrl+X查看交叉引用,都定位到了一个函数,初步推断该函数为eq
然后在函数头下断点,动态调试校验一下
输入密码按下按钮后确实断下来了,然后走两步可以看到自己输入的密码
最后尝试跟了一下,因为对ARM汇编完全不了解,所以尝试性的跟了一会决定放弃,就止步于此了
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2019-3-25 13:35
被kanxue编辑
,原因: