您当前的位置:首页 > 电脑百科 > 程序开发 > 编程百科

PC微信逆向:自动保存加密的聊天图片

时间:2020-06-30 11:04:34  来源:  作者:

前言

本文基于anhkgg大佬的文章《微信PC端技术研究(2)-拿下语音》原文链接:
https://bbs.pediy.com/thread-249274.htm

anhkgg大佬的这篇文章找到了保存语音消息的接口,这里直接给出相关特征码,方便定位(我使用的微信版本依旧是2.6.8.52)

偏移为0x30E326,下面的特征码

PC微信逆向:自动保存加密的聊天图片

 

基于保存语音的相关延伸

其实这个地方不单单有语音消息,还有图片消息,当我们发送一条图片消息时

PC微信逆向:自动保存加密的聊天图片

 

[edi+0x30]的内容里面保存有这一次发送图片的相关数据,包括微信ID等一系列原始的数据。我们当然可以在这个地方写HOOK来保存图片,但是没有必要。因为这里的消息内容过多,处理起来相对会比较麻烦。

图片处理的相关流程

既然这个地方是最原始的消息内容,那么后面肯定会对消息进行相关处理。而且我们已经知道微信的接收的图片会用异或加密的方式保存到本地。那么我们不妨猜测一下图片相关的处理流程。

首先接收到原始的消息后,会对消息进行一系列的处理,其中就包括判断消息是否是图片。那么如果是图片则会取出图片数据,然后在内存中对图片进行加密。加密完成之后调用文件操作的API,写入加密后的图片到本地。

整个过程如图所示:

PC微信逆向:自动保存加密的聊天图片

 

自动保存图片相关思路

既然了解图片处理的流程,而且已经有了接收图片消息的call,那么我们就可以在接收到图片消息之后,在CreateFileW创建图片之前,找到对图片进行加密的算法和函数,将未加密前的图片保存出来。

实战保存聊天图片

PC微信逆向:自动保存加密的聊天图片

 

在OD中找到保存语音的call,发送图片消息让程序断下的同时,对CreateFileW进行下断。之后F9运行

PC微信逆向:自动保存加密的聊天图片

 


此时文件路径为xlog,这个明显不符合我们的要求,继续F9运行

PC微信逆向:自动保存加密的聊天图片

 


一直找到图片路径带有Image关键字时,在创建图片

PC微信逆向:自动保存加密的聊天图片

 


此时我们点击K显示堆栈,找到第一层返回地址,右键显示调用

PC微信逆向:自动保存加密的聊天图片

 


当微信运行到这里的时候,图片加密已经完成,我们要在这个函数之前找到图片的加密算法,其实就在上面一点点的位置,鼠标稍微往上翻一下就能看到

PC微信逆向:自动保存加密的聊天图片

 


找到这个地方之后清除剩下的所有的断点,只保留这一个

对保存图片call的相关分析

再次发送一张图片,程序断下。这段代码首先用循环的方式对图片进行加密,循环的次数即ecx的值,也就是图片的大小。其中有两个数据比较重要。

PC微信逆向:自动保存加密的聊天图片

 

我们先在内存中查看[ebp-0x14]的内容,想要知道这段数据是什么其实很简单。先下CreateFileW断点

PC微信逆向:自动保存加密的聊天图片

 


当CreateFileW断点断下后,执行到返回,查看打开的文件句柄

PC微信逆向:自动保存加密的聊天图片

 


此时打开的图片句柄为0xF80,此时再下WriteFile断点

PC微信逆向:自动保存加密的聊天图片

 


WriteFile断下后可以看到句柄为F80,写入的缓冲区地址为39FE820,而[ebp-0x14]的地址正好也是39FE820。也就是说[ebp-0x14]这个位置保存的是加密后的图片数据

回到之前的断点,再次发送一张图片,查看[ebp-0x4]的数据

PC微信逆向:自动保存加密的聊天图片

 

此时[ebp-0x4]中保存了接收的图片,而ecx保存了图片的大小

PC微信逆向:自动保存加密的聊天图片

 


PC微信逆向:自动保存加密的聊天图片

 


这里借用PCHunter查看->进程内存,将这一段数据dump下来

PC微信逆向:自动保存加密的聊天图片

 

问题就在于这里只是一张大小为4KB的缩略图,回到OD,再次按F9运行

PC微信逆向:自动保存加密的聊天图片

 


断点断下,但是此时ecx的值变成0x5A140

PC微信逆向:自动保存加密的聊天图片

 


用同样的方法dump下内存,大小为360KB,这个就是我们需要的原图了。

也就是说这个地方会端下来两次,第一次是缩略图,第二次才是我们要的原图。

代码实现保存聊天图片

示例代码如下:

PC微信逆向:自动保存加密的聊天图片

 


PC微信逆向:自动保存加密的聊天图片

 


PC微信逆向:自动保存加密的聊天图片

 

实际效果

PC微信逆向:自动保存加密的聊天图片

 


原文链接:
https://blog.csdn.net/qq_38474570/article/details/101755586



Tags:PC微信逆向   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
前言本文基于anhkgg大佬的文章《微信PC端技术研究(2)-拿下语音》原文链接: https://bbs.pediy.com/thread-249274.htmanhkgg大佬的这篇文章找到了保存语音消息的接口,这里直接...【详细内容】
2020-06-30  Tags: PC微信逆向  点击:(76)  评论:(0)  加入收藏
▌简易百科推荐
本文分为三个等级自顶向下地分析了glibc中内存分配与回收的过程。本文不过度关注细节,因此只是分别从arena层次、bin层次、chunk层次进行图解,而不涉及有关指针的具体操作。前...【详细内容】
2021-12-28  linux技术栈    Tags:glibc   点击:(3)  评论:(0)  加入收藏
摘 要 (OF作品展示)OF之前介绍了用python实现数据可视化、数据分析及一些小项目,但基本都是后端的知识。想要做一个好看的可视化大屏,我们还要学一些前端的知识(vue),网上有很多比...【详细内容】
2021-12-27  项目与数据管理    Tags:Vue   点击:(2)  评论:(0)  加入收藏
程序是如何被执行的  程序是如何被执行的?许多开发者可能也没法回答这个问题,大多数人更注重的是如何编写程序,却不会太注意编写好的程序是如何被运行,这并不是一个好...【详细内容】
2021-12-23  IT学习日记    Tags:程序   点击:(9)  评论:(0)  加入收藏
阅读收获✔️1. 了解单点登录实现原理✔️2. 掌握快速使用xxl-sso接入单点登录功能一、早期的多系统登录解决方案 单系统登录解决方案的核心是cookie,cookie携带会话id在浏览器...【详细内容】
2021-12-23  程序yuan    Tags:单点登录(   点击:(8)  评论:(0)  加入收藏
下载Eclipse RCP IDE如果你电脑上还没有安装Eclipse,那么请到这里下载对应版本的软件进行安装。具体的安装步骤就不在这赘述了。创建第一个标准Eclipse RCP应用(总共分为六步)1...【详细内容】
2021-12-22  阿福ChrisYuan    Tags:RCP应用   点击:(7)  评论:(0)  加入收藏
今天想简单聊一聊 Token 的 Value Capture,就是币的价值问题。首先说明啊,这个话题包含的内容非常之光,Token 的经济学设计也可以包含诸多问题,所以几乎不可能把这个问题说的清...【详细内容】
2021-12-21  唐少华TSH    Tags:Token   点击:(10)  评论:(0)  加入收藏
实现效果:假如有10条数据,分组展示,默认在当前页面展示4个,点击换一批,从第5个开始继续展示,到最后一组,再重新返回到第一组 data() { return { qList: [], //处理后...【详细内容】
2021-12-17  Mason程    Tags:VUE   点击:(14)  评论:(0)  加入收藏
什么是性能调优?(what) 为什么需要性能调优?(why) 什么时候需要性能调优?(when) 什么地方需要性能调优?(where) 什么时候来进行性能调优?(who) 怎么样进行性能调优?(How) 硬件配...【详细内容】
2021-12-16  软件测试小p    Tags:性能调优   点击:(20)  评论:(0)  加入收藏
Tasker 是一款适用于 Android 设备的高级自动化应用,它可以通过脚本让重复性的操作自动运行,提高效率。 不知道从哪里听说的抖音 app 会导致 OLED 屏幕烧屏。于是就现学现卖,自...【详细内容】
2021-12-15  ITBang    Tags:抖音防烧屏   点击:(25)  评论:(0)  加入收藏
11 月 23 日,Rust Moderation Team(审核团队)在 GitHub 上发布了辞职公告,即刻生效。根据公告,审核团队集体辞职是为了抗议 Rust 核心团队(Core team)在执行社区行为准则和标准上...【详细内容】
2021-12-15  InfoQ    Tags:Rust   点击:(25)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条