使用pysqlcipher3操作Windows微信数据库 之前写过一系列微信数据库的文章,包括找句柄、获取数据库密钥、调用查询、备份、解密等。但是一直不知道怎么直接操作加密的库,近来发现腾讯开源了WCDB,几个平台的微信数据库都是以这个作为底层,Windows微信也不例外,遂拉代码,编译,记录下打开数据库后执行的一系列PRAGMA命令,再使用普通的sqlcipher执行相似操作,也可以打开。
PC微信逆向--离线解密数据库 文章目录写在前面回顾定位切入点断点调试结论离线解密工具配置环境代码运行写在后面写在前面前面的几篇文章,已经找到sqlite3_exec函数并调用,也实现了数据库在线备份,本篇文章,尝试定位保存数据库密码的基址,并编写一个离线解密工具。回顾在开始之前,要先回顾一下之前得到的结果:数据库初始化785BE313 8D55 CC lea edx, dword ptr [ebp-34]785BE316 52 push edx785BE
PC微信逆向--在线备份数据库 写在前面在前面三篇文章,已经找到数据库句柄、sqlite3_exec函数和一系列备份用的函数地址,本篇文章,尝试完成微信数据库在线备份。回顾数据库句柄[[WeChatWin.dll + 0x222F3FC] + 0x1888]到[[WeChatWin.dll + 0x222F3FC] + 0x188C]函数地址微信版本:3.6.0.18sqlite3_open = 1138ACD0sqlite3_backup_init = 1131C110sqlite3_backup_step = 113
PC微信逆向--定位备份sqlite数据库相关函数 文章目录写在前面备份函数编写测试程序配置环境编译OD调试结果OD地址IDA地址写在后面写在前面上一篇文章,介绍了如何使用找到的数据库句柄和sqlite3_exec函数执行SQL,本篇文章,来尝试定位微信中备份sqlite数据库的相关函数,为下一篇文章要实现的在线备份做铺垫。备份函数开始找之前,要明确需要找的目标,先看一段别人写的备份函数:int backupDb(sqlite3* pDb, const char* szFilename, void(*xProgress)(int, int)
PC微信逆向--调用sqlite3_exec执行SQL 文章目录写在前面回顾sqlite3_exec回调函数函数指针编写代码注入的DLL注入程序输出结果写在后面写在前面上一篇文章,实现了定位保存微信数据库句柄的容器和微信内部的sqlite3_exec函数地址,这一篇文章,尝试使用得到的数据库句柄和sqlite3_exec,来查询数据库中的内容。回顾首先回顾一下上篇文章:PC微信逆向–定位sqlite3_exec和数据库句柄得到的结果,IDA中sqlite3_exec的地址是0x11356570,对应的偏移是0x11356570 - 0x10000000
PC微信逆向--定位sqlite3_exec和数据库句柄 写在前面最近在做PC端微信逆向,搞定了基本的首发消息,通讯录获取等,这期间遇到一个小小的问题,从通讯录获取到的内容不全,除非登录后手动点击过某个好友,不然获取不到头像、V3等,所以产生了解密数据库的想法。收集资料首先要明确一个想法,这个世界很大,想做的事情,至少90%都可能是别人做过的,有些人会把他们的经历分享到互联网上,我们可以利用这些知识,让自己不需要从0开始。在这个日新月异的时代,技术存在时效性,找到的资料可以作为参考,我们需要做的,是更新替换那些过期的内容,让别人分享的东西在重新跑起来。下
PC微信逆向--获取通讯录 文章目录写在前面思路定位过程整理写在后面写在前面微信版本:3.5.0.46之前完成了发送文本消息和图片消息功能,但是发送的时候,需要指定对方的wxid,这可不是个简单的事情,毕竟微信给用户看的一般是自定义的微信号,所以需要获取到通讯录,然后根据昵称啊、微信号、备注一类的东西搜索wxid出来。思路参考B站up主Hellmessage的视频,指路:Hellmessage微信登录过程中会同步服务器中的好友列表到内存中,这一块数据以链表形式存在,很少发生变化,只要找到头结点,就能获取到整个通讯录,需要做
js获取网页echarts图表中的数据 写在前面最近接到某网站的爬虫需求,因为客户与目标网站是通过协议获取的账号,所以不希望从接口获取数据,而网页源代码无法获取完整的canvas数据,怎么办呢,需求还是得做。实现思路后来发现,echarts是动态图表,当鼠标移动到某处时,会高亮该处数据,并实时更改某个div的text内容,观察network接口,没有新的请求(也不可能有),说明数据已经存储在某个js变量里了,我就去瞅了一下echarts渲染数据时使用的函数:var chart = echarts.init(document.getElem
PC微信逆向获取聊天表情 写在前面PC微信版本:3.5.0.46今天有个老哥提出需求,问我能不能把微信的表情包保存到本地,因为之前找到过未加密图片数据的Hook点,本来以为差不多的,然而并不是,所以有了这篇文章。思路首先还是在接收消息的地方下断,发一个表情,查看消息内容,把xml数据拷贝出来,看看都用到了哪些属性,然后在OD里右键-查找-查找所有字串,搜索某个属性,把push这些属性的指令都下断。然后再发一个表情消息,会在某个push属性的地方断下,取消掉之前所有的断点,再BP CreateFileW,然后一直运行直到Cr
Python通过COM口调用微信发消息CALL 文章目录写在前面实现思路注入的DLLCOM组件注册COM服务Python中的调用资源下载声明写在前面赶在二月底来更新。WeChat版本:3.5.0.46编译环境:Windows10 Pro2019 Community实现思路思路,之前的文章基本讲过:编写32位DLL,添加内联汇编调用微信发消息CALL开辟远程进程,在远程进程中开辟远程线程和写入DLL绝对路径调用LoadLibrary让微信加载自己的DLL将DLL加载进自己创建的exe进程中,计算导出函数的偏移以同样的方式,在远
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
PC微信逆向之发送消息 PC微信逆向之发送消息写在前面工具定位CALL地址调用生成DLL注入与外部调用注入部分代码写在后面写在前面最近在搞微信的发送消息CALL,跟着网上的教程,一步一步走,很容易定位到CALL的地址,在适当的地方用OD断下,修改压入的参数内容,消息内容或接收人成功改变,但在使用C++调用的时候,因为不懂汇编指令,所以踩了一些坑。工具微信 3.5.0.46Windows10 ProOllyICE 1.10Cheat Engine 7.0Visual Studio 2019定位CALL地址这部分感
为网站添加APlayer音乐播放控件 文章目录源代码和文档准备工作修改配置模型与视图管理后台编写模板收尾注意事项可优化内容源代码和文档Github地址APlayer文档准备工作默认你已拥有Django基础知识,并且设备中安装了python和Django环境,会使用pip包管理工具#安装Djangopip install django#创建项目和appdjango-admin startproject myprojectcd myprojectpython manage.py startapp myplayer#创建超级用
简单仿制腾讯大数据星云图 文章目录写在前面用到的包静态文件代码部分采集数据数据去重获取国家边界装饰器绘图主函数边界文本完整代码参考文献写在前面带伙们可以先看下腾讯的图,非常漂亮:腾讯位置大数据星云图再看看本文代码绘制的图,逼格降低99%:但是轮廓还是有的!!!对吧?用到的包import reimport requestsimport jsonfrom fake_useragent import UserAgentimport pandas as pdimport numpy as npfrom s