- 今天小谈一波越狱的插件开发。平常都用
某信举例,今天用一波某手。(hook一下某手的登录并获取下密码,跟前面的知识一样,不过今天用下越狱插件)
1. 思路
- 我们做一件事之前,要捋一下
思路(可能不会跟着思路走,但是我们逆向之前还是要考虑一下~)
第一步: 找到
某手进程名或者二进制文件名
第二步: 分析
登录界面,class-dump获取header
第三步: 找到
类名和方法名,关联密码框的所属~
第四部:
Thoes编写插件。hook方法名
第五步: 安装插件,测试案例
2. 定位登录方法
-
开始搞起~
-
- 看下进程名啥
- 看下进程名啥
-
- 把
IPA砸出来
- 把
-
- 查看
二进制文件名
- 查看
一般情况,这个名字和二进制都一样,兄得们可以解开包看一下~
-
- 首先把,header弄出来~
class-dump -H com_kwai_gif -o kuaishouHeader
- 首先把,header弄出来~
呕吼,他做安全处理了~
-
- 没办法了吗? 咋可能呢~ (这个时候,我们可以用几种方法,我这里说一种
lldb附加进程)
- 没办法了吗? 咋可能呢~ (这个时候,我们可以用几种方法,我这里说一种
当然,这样我们可以
hook他的登录
3. 插件搞起
我们首先写个
插件,然后定位下这个方法是否正确
-
- 获取
某手的APPID
- 获取
-
- 通过
THOES创建插件
- 通过
-
- 根据
LLDB命令methods address
- 根据
-
- 开始搞代码了~
在Makefile还是要配置一下:
然后进入插件目录,
make一下,在make package;make install,就会装在手机上,并重启桌面
-
- 当我们点击登录的时候:我们在控制台查看到
我们也看见了个诡异的信息,
user Default。。我去瞅一眼(然后我没有看到啥)
4. 定位密码
这个时候,我们已经找到了他要调用的方法(当然这个类可能别的方法也会调用 ,严谨一点的话,兄弟们可以写个判断在
登陆界面才去hook。我这里就不写那个判断了)
- 我们考虑下,如何找到他的
密码。登陆的时候 ~密码和点击方法看来离得有点远啊。
嘿嘿、当然还有办法的。
-
首先, 我们知道的是,通过点击登录按钮获取密码😜
-
然后, 我通过
cycript分析出界面结构 -
最后, 在通过
LLDB命令。获取方法、属性和成员变量
具体的操作小谷就不能写了,怕造成不好的印象,这篇博客主要是
插件的开发
- 看一波实例
- 安装完插件之后,控制台输出
5. 总结
-
首先这篇博客单纯的只是为了
学习技术,没有任何其他的想法 -
这篇博客,兄弟们就不要转载了。小谷心里虚(毕竟
某手搞了安全) -
如果有任何不好的影响,小谷可以立即
删除这篇博客。(兄弟们就不要用某手玩了) -
这篇博客写的时候有点虚,可能不是很详细,小谷紧张了~ 😆
-
最后,希望和兄弟们
共同努力共同进步(毕竟生在一个内卷的时代)