
软件逆向
文章平均质量分 84
勇敢自由
吾生也有涯,而知也无涯。
展开
-
Windows微信文本压缩算法分析
Windows微信文本压缩算法分析原创 2022-12-30 19:10:34 · 2330 阅读 · 14 评论 -
PC微信逆向--离线解密数据库
文章目录写在前面回顾定位切入点断点调试结论离线解密工具配置环境代码运行写在后面写在前面前面的几篇文章,已经找到sqlite3_exec函数并调用,也实现了数据库在线备份,本篇文章,尝试定位保存数据库密码的基址,并编写一个离线解密工具。回顾在开始之前,要先回顾一下之前得到的结果:数据库初始化785BE313 8D55 CC lea edx, dword ptr [ebp-34]785BE316 52 push edx785BE原创 2022-05-10 22:51:23 · 5628 阅读 · 12 评论 -
PC微信逆向--在线备份数据库
写在前面在前面三篇文章,已经找到数据库句柄、sqlite3_exec函数和一系列备份用的函数地址,本篇文章,尝试完成微信数据库在线备份。回顾数据库句柄[[WeChatWin.dll + 0x222F3FC] + 0x1888]到[[WeChatWin.dll + 0x222F3FC] + 0x188C]函数地址微信版本:3.6.0.18sqlite3_open = 1138ACD0sqlite3_backup_init = 1131C110sqlite3_backup_step = 113原创 2022-05-04 12:19:34 · 2495 阅读 · 0 评论 -
PC微信逆向--定位备份sqlite数据库相关函数
文章目录写在前面备份函数编写测试程序配置环境编译OD调试结果OD地址IDA地址写在后面写在前面上一篇文章,介绍了如何使用找到的数据库句柄和sqlite3_exec函数执行SQL,本篇文章,来尝试定位微信中备份sqlite数据库的相关函数,为下一篇文章要实现的在线备份做铺垫。备份函数开始找之前,要明确需要找的目标,先看一段别人写的备份函数:int backupDb(sqlite3* pDb, const char* szFilename, void(*xProgress)(int, int)原创 2022-04-29 12:53:53 · 3521 阅读 · 0 评论 -
PC微信逆向--调用sqlite3_exec执行SQL
文章目录写在前面回顾sqlite3_exec回调函数函数指针编写代码注入的DLL注入程序输出结果写在后面写在前面上一篇文章,实现了定位保存微信数据库句柄的容器和微信内部的sqlite3_exec函数地址,这一篇文章,尝试使用得到的数据库句柄和sqlite3_exec,来查询数据库中的内容。回顾首先回顾一下上篇文章:PC微信逆向–定位sqlite3_exec和数据库句柄得到的结果,IDA中sqlite3_exec的地址是0x11356570,对应的偏移是0x11356570 - 0x10000000原创 2022-04-22 20:58:39 · 3858 阅读 · 3 评论 -
PC微信逆向--定位sqlite3_exec和数据库句柄
写在前面最近在做PC端微信逆向,搞定了基本的首发消息,通讯录获取等,这期间遇到一个小小的问题,从通讯录获取到的内容不全,除非登录后手动点击过某个好友,不然获取不到头像、V3等,所以产生了解密数据库的想法。收集资料首先要明确一个想法,这个世界很大,想做的事情,至少90%都可能是别人做过的,有些人会把他们的经历分享到互联网上,我们可以利用这些知识,让自己不需要从0开始。在这个日新月异的时代,技术存在时效性,找到的资料可以作为参考,我们需要做的,是更新替换那些过期的内容,让别人分享的东西在重新跑起来。下原创 2022-04-20 16:12:01 · 7678 阅读 · 10 评论 -
PC微信逆向--看看哪些好友删除了自己
PC微信逆向--看看哪些好友删除了自己原创 2022-03-24 17:07:08 · 1741 阅读 · 6 评论 -
PC微信逆向--获取通讯录
文章目录写在前面思路定位过程整理写在后面写在前面微信版本:3.5.0.46之前完成了发送文本消息和图片消息功能,但是发送的时候,需要指定对方的wxid,这可不是个简单的事情,毕竟微信给用户看的一般是自定义的微信号,所以需要获取到通讯录,然后根据昵称啊、微信号、备注一类的东西搜索wxid出来。思路参考B站up主Hellmessage的视频,指路:Hellmessage微信登录过程中会同步服务器中的好友列表到内存中,这一块数据以链表形式存在,很少发生变化,只要找到头结点,就能获取到整个通讯录,需要做原创 2022-03-13 14:15:52 · 4694 阅读 · 4 评论 -
PC微信逆向获取聊天表情
写在前面PC微信版本:3.5.0.46今天有个老哥提出需求,问我能不能把微信的表情包保存到本地,因为之前找到过未加密图片数据的Hook点,本来以为差不多的,然而并不是,所以有了这篇文章。思路首先还是在接收消息的地方下断,发一个表情,查看消息内容,把xml数据拷贝出来,看看都用到了哪些属性,然后在OD里右键-查找-查找所有字串,搜索某个属性,把push这些属性的指令都下断。然后再发一个表情消息,会在某个push属性的地方断下,取消掉之前所有的断点,再BP CreateFileW,然后一直运行直到Cr原创 2022-03-03 18:14:39 · 3216 阅读 · 2 评论 -
Python通过COM口调用微信发消息CALL
文章目录写在前面实现思路注入的DLLCOM组件注册COM服务Python中的调用资源下载声明写在前面赶在二月底来更新。WeChat版本:3.5.0.46编译环境:Windows10 Pro2019 Community实现思路思路,之前的文章基本讲过:编写32位DLL,添加内联汇编调用微信发消息CALL开辟远程进程,在远程进程中开辟远程线程和写入DLL绝对路径调用LoadLibrary让微信加载自己的DLL将DLL加载进自己创建的exe进程中,计算导出函数的偏移以同样的方式,在远原创 2022-02-28 10:12:39 · 1418 阅读 · 2 评论 -
PC微信3.5.0.46几个函数位置
文章目录发文本消息发文件接收消息未加密图片数据wxid查询好友信息发文本消息WeChatWin.dll: 78670000787D42EE 8D46 38 lea eax, dword ptr [esi+38] ; 取at结构体787D42F1 6A 01 push 1 ; 0x1787D42F3 50 push eax原创 2022-02-22 13:44:08 · 1400 阅读 · 6 评论 -
PC微信逆向之发送消息
PC微信逆向之发送消息写在前面工具定位CALL地址调用生成DLL注入与外部调用注入部分代码写在后面写在前面最近在搞微信的发送消息CALL,跟着网上的教程,一步一步走,很容易定位到CALL的地址,在适当的地方用OD断下,修改压入的参数内容,消息内容或接收人成功改变,但在使用C++调用的时候,因为不懂汇编指令,所以踩了一些坑。工具微信 3.5.0.46Windows10 ProOllyICE 1.10Cheat Engine 7.0Visual Studio 2019定位CALL地址这部分感原创 2022-01-30 11:23:06 · 3534 阅读 · 4 评论