Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

获取code部分,没看到是如何找到hook点的,可以详细说一下? #1

Open
bamboox opened this issue Jan 8, 2024 · 3 comments

Comments

@bamboox
Copy link

bamboox commented Jan 8, 2024

No description provided.

@Reacurt
Copy link
Owner

Reacurt commented Jan 8, 2024

如果你需要获取code,我可以提供call偏移地址的详细情况,你可以根据需要编写hook。至于怎么找到这个call,我逆向也是门外汉,没什么很好的技巧,具体思路就是先获取微信内部的日志,找到调用wx.login()时的日志输出,根据日志内容在od里搜索字符串,然后就是一步一步调,看寄存器和堆栈的变化,借此定位call。

@bamboox
Copy link
Author

bamboox commented Jan 9, 2024

如果你需要获取code,我可以提供call偏移地址的详细情况,你可以根据需要编写hook。至于怎么找到这个call,我逆向也是门外汉,没什么很好的技巧,具体思路就是先获取微信内部的日志,找到调用wx.login()时的日志输出,根据日志内容在od里搜索字符串,然后就是一步一步调,看寄存器和堆栈的变化,借此定位call。

我下载了wechat同样版本,根据你readme介绍,ce搜内存地址,发现一只有2个,然后下内存写入断点,定位不到,一直在这块内存循环(我用的是xdbg32, OD感觉wechat有检测一直打不开小程序,被拦截了,是不是需要特殊配置?) ps: 有最新版本的hook 偏移吗?call wx.login()和getcode, ;想加一下wechat,请教下细节

@Reacurt
Copy link
Owner

Reacurt commented Jan 9, 2024

如果你需要获取code,我可以提供call偏移地址的详细情况,你可以根据需要编写hook。至于怎么找到这个call,我逆向也是门外汉,没什么很好的技巧,具体思路就是先获取微信内部的日志,找到调用wx.login()时的日志输出,根据日志内容在od里搜索字符串,然后就是一步一步调,看寄存器和堆栈的变化,借此定位call。

我下载了wechat同样版本,根据你readme介绍,ce搜内存地址,发现一只有2个,然后下内存写入断点,定位不到,一直在这块内存循环(我用的是xdbg32, OD感觉wechat有检测一直打不开小程序,被拦截了,是不是需要特殊配置?) ps: 有最新版本的hook 偏移吗?call wx.login()和getcode, ;想加一下wechat,请教下细节

我又上传了一些内容,包括安装包、偏移地址的描述、一个基于frida的hook脚本,你可以再参考下。这个也是我大半年前找的,暂时没去找过新版本。逆向我也不是很懂,那个call应该是个请求api,微信里很多请求都会走这个函数,所以调试时总会回到那个断点(或者是其他原因)。你可以尝试先打开小程序,再附加进程,但是依旧会有微信崩溃的问题,我没别的办法。你可以整个只有调用wx.login()功能的小程序,调试时会方便一点点。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants