Sweettea 发表于 2019-7-17 12:44

提取保存PC微信图片表情分析

本帖最后由 Sweettea 于 2019-7-22 11:23 编辑

某日看到个微信表情,想要保存到本地,然而发现旧方法已失效,无奈又没找到啥新的方法,只好自己动手。
以下是分析过程。


WX客户端版本:2.6.8.51


在新版本微信里,表情文件保存在这个目录下: \WeChat Files\微信号\FileStorage\CustomEmotion
所有图片内容都是被加密了的,都不能以图片格式打开。

自己拿手机添加并发送一个表情,对比原图和加密后文件,发现加密后的文件大小多了7个字节。

用WinHex打开加密后的图片,发现文件头被修改成V1MMWX。





上OD,附加上WeChat.exe,在WeChatWin.dll模块内存使用中文搜索引擎查找文本字符串。

在搜索结果中查找文本V1MMWX,给两个结果都下断点。

这一个内存地址,没收到新的图片就会断下来,猜测是解密本地图片?
取消这个断点,看另外一个内存地址。

拿手机发一个表情(需要本地没有加密保存的表情,本地有的话可以把文件先删除),断下来后看堆栈,翻到第二层返回地址,给上面的CALL下断点。


拿手机再发一个表情,断下来后看堆栈参数,在数据窗口中跟随,对比原图片即可发现,前四个字节指向的内存就是未加密图片的数据,接着四个字节就是未加密图片的文件大小。




分析至此,即可在断点处进行HOOK,每当收到新图片表情时直接写出未加密的图片文件到本地。
附上易语言劫持注入HOOK取图片表情代码:



运行效果:










PS:WIN8/10系统需要以管理员身份运行微信,要不可能会因为权限不够无法创建目录和写出文件

参考帖子:
https://www.52pojie.cn/forum.php?mod=viewthread&tid=735810&authorid=687039&page=1

tzminglove 发表于 2019-7-19 21:17

同版本,但是不成功,没有KCOutput文件夹

鬼手56 发表于 2019-7-19 16:29

补充 直接nop掉jnz的跳转,就可以直接跳过加密图片部分完全不需要写HOOK


sceic 发表于 2019-9-9 12:10

提示一下,只要清空CustomEmotion里面的表情文件,这个dll就会起作用。否则会因为图片已存在而不会生成到KCOutput里。

k7512221 发表于 2019-9-27 12:59

感谢分享,新版wx已失效,网上找了个2.6.8.51还可用。

hxp.china.sh 发表于 2019-7-29 15:27

没效果,没用呀

cww5205200 发表于 2019-8-17 11:22

完全搞不懂怎么提取 下载了两个都不能成功 浪费我时间精力还有币

qq8733976 发表于 2019-11-6 10:27

亲测目前还是可用的,用2.6.8.51版本微信安装路径默认C盘,提前将DLL文件复制到微信根目录下同时创建一个KCOutput文件夹,最后登录微信PC端,用手机给自己发送表情,到KCOutput文件夹下就可看见发送的表情了。

huanghui9969 发表于 2019-7-18 18:02

微信闪退报错

萧骁 发表于 2020-1-15 14:35

亲测可用,只能2.6.8.51版本可用。可以找个绿色版下载,然后把dll放进去。清理掉原来的缓存的表情,然后发送,就会在安装路径下产生新的文件夹,里面就有想要的gif啦

戏言跟班丶 发表于 2019-7-17 12:52

你膨胀了 苦茶 居然变成甜茶了

lunaaero 发表于 2019-7-17 13:28

我也想提取微信表情

天光侠 发表于 2019-7-17 13:31

围观学习~~刚好想了解

大大大丶叶子 发表于 2019-7-17 13:37

围观学习~~牛b

13798656396 发表于 2019-7-17 13:37

学到了,很好

shaokui123 发表于 2019-7-17 13:41

高手,厉害

qiwentian 发表于 2019-7-17 13:43

Lyu 发表于 2019-7-17 13:50

厉害了,学习◖⚆ᴥ⚆◗

孤星血泪 发表于 2019-7-17 13:57

这个就厉害了
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 提取保存PC微信图片表情分析