首页
社区
课程
招聘
[原创]2025企业微信4.1.36.6011刷新二维码
发表于: 2025-4-14 17:24 2783

[原创]2025企业微信4.1.36.6011刷新二维码

2025-4-14 17:24
2783

上篇2025企业微信4.1.36.6011获取登录二维码
我们成功获取到了二维码的地址 在过程中 会遇到 二维码地址失效的情况
这种情况下就需要我们去点一下刷新按钮才能获取到新的二维码

打开企业微信 然后先丢着 等二维码过期
图片描述
找到[原创]2025企业微信4.1.36.6011调试Duilib获取界面XML
里面获取的login\qrcode_frame.xml文件 大致看下内容 找到一个过期刷新的界面

那我们可以根据 expired_refresh_qrcode_button 这个按钮的名称 去找一下 是哪里触发了刷新逻辑
先打开 IDA 搜一下字符串 发现没搜到...
那就打开 x32dbg 附加一下 选择 wxwork.exe 然后在当前模块搜索一下字符串
图片描述
找到一个 右键 在反汇编中转到 下个断点 然后点一下刷新二维码
用 ret-sync 插件 同步一下 IDA 和 x32dbg 方便我们看代码调试
图片描述
执行到这里之后 跳到了LABEL_28
图片描述
进去这个方法看一下
图片描述
看起来比较像是刷新的方法 我们记录一下方法的地址 0x036608A4
然后临时保存一下 ecx 也就是 this 指针的值 0x1CEE2CB8
然后让程序继续运行 接着用代码注入器 注入一下汇编代码试试
可以看到 执行之后 他的二维码就开始刷新了(速度太快了 截图了好几次才截到)
图片描述

还是和之前一样 先把这个地址手动添加到地址列表 然后进行指针扫描
在 x32dbg 里面 对方法的地址 0x036608A4 下断点
x32dbg 重启企业微信 继续运行 等到触发断点
再次记录 ecx 的值 0x1C0DAA10 然后让程序继续运行
界面展示之后 继续扫描刚才记录的指针地址
重复几次之后 得到一个稳定不变的偏移地址
图片描述

仔细观察 实际上你会发现 和上次获取二维码地址偏移位置差不多
图片描述
所以猜测 WxWork.exe+0x05C54A20 +60 +10C +C 应该是一个对象地址
我们把这个地址添加上 然后用结构分析看看数据结构
图片描述
添加地址 然后选中 Ctrl+B 打开内存浏览器 然后 Ctrl+D 打开分析数据/遍历
图片描述
点击 结构-> 定义新的结构 会发现它自动读取到了一个名称 直接确认
图片描述
然后看看上面的 +58 也就是那个刷新二维码的对象地址
图片描述
仔细观察会发现 正好符合了这个 IDA 分析出来的代码 1D03B034-4=1D03B030
图片描述
再看看 +290 可以看到我们要的那个 二维码 Key 的数据
图片描述

这次直接修改上次写的代码 然后 用 __asm 来完成调用

然后我们注入一下试试看(刷新的截图不到 反正每次注入都会变 说明没问题了)
图片描述

<!-- 过期刷新蒙板层控件 -->
<FloatLayout name="expired_refresh_qrcode_mask_layout" height="200" width="200" targetcontrol="qrcode_image" bkcolor="!base_white_090" visible="false" mouse="false">
    <Control mouse="false"/>
        <!-- 过期刷新控件布局 -->
        <VerticalLayout name="expired_refresh_qrcode_layout" width="90" mouse="false">
            <Control mouse="false"/>
            <!-- 二维码过期提示布局 -->
            <HorizontalLayout name="expired_refresh_qrcode_tips_label_layout" height="fit" padding="0,0,0,8" mouse="false">
                <Control mouse="false"/>
                <WrapLabel name="expired_refresh_qrcode_tips_label" maxline="1" align="center" width="fit" fontsize="15" textcolor="!bg_black" mouse="false"/>
                <Control mouse="false"/>
            </HorizontalLayout>
             
            <!-- 刷新按钮布局 -->
            <HorizontalLayout name="expired_refresh_qrcode_button_layout" height="22"mouse="false">
                <Control mouse="false"/>
                <Button name="expired_refresh_qrcode_button" width="fit" height="22"  align="vcenter" text="$@IDS_G_QRCODE_EXPIRED_REFRESH" fontsize="15" textcolor="!accent_blue" />
                <Control mouse="false"/>
            </HorizontalLayout>
            <Control mouse="false"/>
        </VerticalLayout>
    <Control mouse="false"/>
</FloatLayout>
<!-- 过期刷新蒙板层控件 -->
<FloatLayout name="expired_refresh_qrcode_mask_layout" height="200" width="200" targetcontrol="qrcode_image" bkcolor="!base_white_090" visible="false" mouse="false">
    <Control mouse="false"/>
        <!-- 过期刷新控件布局 -->
        <VerticalLayout name="expired_refresh_qrcode_layout" width="90" mouse="false">
            <Control mouse="false"/>
            <!-- 二维码过期提示布局 -->
            <HorizontalLayout name="expired_refresh_qrcode_tips_label_layout" height="fit" padding="0,0,0,8" mouse="false">
                <Control mouse="false"/>
                <WrapLabel name="expired_refresh_qrcode_tips_label" maxline="1" align="center" width="fit" fontsize="15" textcolor="!bg_black" mouse="false"/>
                <Control mouse="false"/>
            </HorizontalLayout>
             
            <!-- 刷新按钮布局 -->
            <HorizontalLayout name="expired_refresh_qrcode_button_layout" height="22"mouse="false">
                <Control mouse="false"/>
                <Button name="expired_refresh_qrcode_button" width="fit" height="22"  align="vcenter" text="$@IDS_G_QRCODE_EXPIRED_REFRESH" fontsize="15" textcolor="!accent_blue" />
                <Control mouse="false"/>
            </HorizontalLayout>
            <Control mouse="false"/>
        </VerticalLayout>
    <Control mouse="false"/>

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 13
支持
分享
最新回复 (11)
雪    币: 12
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
能加个联系方式么? 大佬。
2025-4-21 16:22
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
 大佬
2025-4-22 14:14
0
雪    币: 0
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
大佬好
2025-5-3 15:01
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
5
谢谢分享
2025-5-4 17:44
0
雪    币: 370
活跃值: (1525)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢分享
2025-5-9 08:16
0
雪    币: 238
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
大佬能做帮我个软件吗
2025-5-11 12:10
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
8
666
2025-5-18 10:54
0
雪    币: 193
活跃值: (892)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
9
1
2025-5-19 14:34
0
雪    币: 4257
活跃值: (2680)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
谢谢分享
2025-5-29 22:35
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
666
2025-6-3 17:16
0
雪    币: 135
活跃值: (2561)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
666
2025-6-5 19:39
0
游客
登录 | 注册 方可回帖
返回