Android微信数据库解密2

Android微信数据库解密2

上篇文章讲了下微信数据库密码规则,以及相关的代码.

本篇文章主要讲解下使用xpose获取对应的数据库密码.

public class HookModule implements IXposedHookLoadPackage {public static final String TAG = "HookModule";@Overridepublic void handleLoadPackage(XC_LoadPackage.LoadPackageParam lpparam) throws Throwable {Log.e(TAG, "handleLoadPackage");if ("com.tencent.mm".equals(lpparam.packageName)) {Log.e(TAG, "handleLoadPackage wx start");Class<?> sqliteDatabase = XposedHelpers.findClass("com.tencent.wcdb.database.SQLiteDatabase", lpparam.classLoader);Log.e(TAG, "sqliteDatabase:" + sqliteDatabase);Class<?> config = XposedHelpers.findClass("com.tencent.wcdb.database.SQLiteDatabaseConfiguration", lpparam.classLoader);Log.e(TAG, "SQLiteDatabaseConfiguration:" + config);Class<?> spec = XposedHelpers.findClass("com.tencent.wcdb.database.SQLiteCipherSpec", lpparam.classLoader);Log.e(TAG, "SQLiteCipherSpec:" + spec);XposedHelpers.findAndHookMethod("com.tencent.wcdb.database.SQLiteConnectionPool", lpparam.classLoader, "open", sqliteDatabase, config, byte[].class, spec, int.class, new XC_MethodHook() {@Overrideprotected void beforeHookedMethod(MethodHookParam param) throws Throwable {super.beforeHookedMethod(param);byte[] bytes = (byte[]) param.args[2];Log.e(TAG, "pwd:" + new String(bytes));}@Overrideprotected void afterHookedMethod(MethodHookParam param) throws Throwable {super.afterHookedMethod(param);}});}}

如图所示: 可以得到对应的密码 为c96bc7f.

在这里插入图片描述

我们拿到imei以及uin验证下结果. (我的设备是root设备)

根据路径拿到 /data/data/com.tencent.mm/shared_prefs/system_config_prefs.xml

<int name="default_uin" value="1463108995" />

经过拼接 获取md5可得到 :c96bc7f81c81d322dbef5bbcd1297d24

如下图所示结果:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/62388.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

git文件夹内容详解

.git文件夹是Git版本控制系统在项目根目录下创建的隐藏文件夹&#xff0c;包含了Git仓库的所有相关信息。如下是.git文件夹中常见的一些内容及其作用&#xff1a; HEAD&#xff1a;指向当前所在的分支&#xff08;或者是一个特定的提交&#xff09;。 branches&#xff1a;存储…

详解排序算法(附带Java/Python/Js源码)

冒泡算法 依次比较两个相邻的子元素&#xff0c;如果他们的顺序错误就把他们交换过来&#xff0c;重复地进行此过程直到没有相邻元素需要交换&#xff0c;即完成整个冒泡&#xff0c;时间复杂度。 比较相邻的元素。如果第一个比第二个大&#xff0c;就交换它们两个&#xff1b;…

Spring Boot实践八--用户管理系统(下)

前面我们在数据库初始化时额外创建了一张任务表&#xff0c;用来模拟处理任务&#xff1a; key模拟业务sendMail模拟用户注册后给用户发送邮件任务&#xff0c;多线程异步任务处理analysisLog模拟每晚定时分析日志业务&#xff0c;定时任务处理 异步任务 异步任务通过方法上…

为何电商行业都在争相使用WhatsApp引流小挂件?

WhatsApp小挂件是嵌入在网站上的聊天小部件&#xff0c;允许访问者同WhatsApp与您联系。点击后&#xff0c;它会将客户带到移动或桌面 WhatsApp应用程序&#xff0c;或者直接打开一个对话框&#xff0c;客户可以在这些地方与您发起对话。让我们看看在您的网站上拥有WhatsApp聊天…

常用激活函数整理

最近一边应付工作&#xff0c;一边在补足人工智能的一些基础知识&#xff0c;这个方向虽然新兴&#xff0c;但已是卷帙浩繁&#xff0c;有时不知从何入手&#xff0c;幸亏有个适合基础薄弱的人士学习的网站&#xff0c;每天学习一点&#xff0c;积跬步以至千里吧。有像我一样学…

PHP多语言代入电商平台api接口采集拼多多根据ID获取商品详情原数据示例

拼多多商品详情原数据API接口的作用是获取拼多多电商平台上某一商品的详细信息&#xff0c;包括商品的标题、价格、库存、图片、描述、包邮信息、销量、评价、优惠券等数据。通过该API接口可以获取到商品的原始数据&#xff0c;用于分析、筛选和展示商品信息。 pinduoduo.item…

复习之docker部署--项目实战

一、实验环境 1.安装7.6虚拟机 最小化安装&#xff0c;不安装图形&#xff01; 2.封装虚拟机 关闭selinux关闭防火墙关闭networkmanager配置网络&#xff0c;保证可以ssh修改主机名添加双向解析配置7.6网络仓库--安装常用的工具 配置完成后&#xff0c;在真机ssh虚拟机 如果…

在Mac终端使用unrar和rar 解压和压缩软件

1、首先从rarlab 网站下载 rar &#xff0f; unrar 工具 rarlab网站&#xff1a; https://www.rarlab.com/download.htm 2、解压缩下载的 tar.gz 压缩包&#xff08;rarmacos-x64-623.tar.gz&#xff09;&#xff0c;在下载目录downloads下自动创建一个rar的目录&#xff0c;其…

(三)Redis——Set

SADD key value SMEMBERS 127.0.0.1:6379> SADD set aaa 1 127.0.0.1:6379> SMEMBERS set aaa 127.0.0.1:6379> SADD set aaa 0 127.0.0.1:6379> SMEMBERS set aaaSISMEMBER 判断 aaa 是否在 set 中 127.0.0.1:6379> SISMEMBER set aaa 1 127.0.0.1:6379>…

从零开始的Hadoop学习(四)| SSH无密登录配置、集群配置

1. SSH 无密登录配置 1.1 配置 ssh &#xff08;1&#xff09;基本语法 ssh 另一台电脑的IP地址 &#xff08;2&#xff09;ssh 连接时出现 Host key verification failed 的解决方法 [atguiguhadoop102 ~]$ ssh hadoop103&#xff08;3&#xff09;回退到 hadoop102 [at…

基于大数据技术的网络流量分析与威胁检测综述

摘要&#xff1a; 本文综述了基于大数据技术的网络流量分析与威胁检测的研究进展。现如今&#xff0c;随着互联网的迅速发展&#xff0c;网络威胁与攻击也日益增多&#xff0c;传统的基于规则和特征的威胁检测方法已经不能满足需求。而大数据技术以其强大的数据处理和分析能力&…

常用的时间段的时间戳

获取 昨天这个时间的时间戳 Calendar calendar Calendar.getInstance(); //当前时间calendar.add(Calendar.DAY_OF_YEAR,-1); Long dd calendar.getTime().getTime()/1000;System.out.println(dd);计算今天0点的时间戳 Long time System.currentTimeMillis(); //当前…

bazel入门学习笔记

简介 Bazel Google开源的&#xff0c;是一款与 Make、Maven 和 Gradle 类似的开源构建和测试工具。 它使用人类可读的高级构建语言。Bazel 支持多种语言的项目&#xff0c;可为多个平台构建输出。Bazel支持任意大小的构建目标&#xff0c;并支持跨多个代码库和大量用户的大型代…

登录校验-Filter-登录校验过滤器

目录 思路 登录校验Filter-流程 步骤 流程图 登录校验Filter-代码 过滤器类 工具类 测试登录 登录接口功能请求 其他接口功能请求 前后端联调 思路 前端访问登录接口&#xff0c;登陆成功后&#xff0c;服务端会生成一个JWT令牌&#xff0c;并返回给前端&#xff0…

【状态估计】基于UKF法、AUKF法的电力系统三相状态估计研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Unity Canvas动画不显示的问题

问题描述: 我通过角色创建了一个walk的动画&#xff0c;当我把这个动画给到Canvas里面的一个image上&#xff0c;这个动画就不能正常播放了&#xff0c;经过一系列的查看我才发现&#xff0c;canvas里面动画播放和非canvas得动画播放&#xff0c;他们的动画参数是不一样的。一个…

【C/C++】x -x 的含义

1、含义 -x 的值&#xff0c;其实就是在x的值的基础上进行按位取反&#xff08;~x&#xff09;之后在增加1所得&#xff08;C语言中&#xff0c;-x实现是用取反1实现&#xff09;也就是说&#xff1a;x & -x x & (~x 1) 2、x 为偶数 当一个奇数 1时&#xff0c;表示…

解决Spring Boot前后端分离开发模式中的跨域问题

在实际开发中&#xff0c;经常会遇到前端Vue应用与后端Spring Boot API接口存在跨域访问的问题。本篇博客将分享解决Spring Boot前端Vue跨域问题的实战经验&#xff0c;帮助开发者快速解决该问题。 一、跨域问题的原因 跨域问题是由于浏览器的同源策略引起的。同源策略限制了…

SpringBoot实现分页的三种方式

一 自己封装Page对象实现 博客链接 二 使用sql实现分页 2.1 场景分析 前段传递给给后台什么参数? 当前页码currentPage每页显示条数pageSize 后台给前端返回什么数据? 当前页数据List总记录数totalCount 2.2 前段代码 <template><el-paginationsize-change&q…

2D-2D对极几何中的基本矩阵、本质矩阵和单应矩阵

本文主要参考高翔博士的视觉SLAM十四讲第二版中的7.3章节内容。文章目录 1 对极约束2 本质矩阵E3 单应矩阵 1 对极约束 现在&#xff0c;假设我们从两张图像中得到了一对配对好的特征点&#xff0c;如图7.9所示&#xff08;假如后面我们有若干对这样的匹配点&#xff0c;根据这…