详解Android 获取手机中微信聊天记录方法

所属分类: 软件编程 / Android 阅读数: 80
收藏 0 赞 0 分享

首先我们要知道,微信的聊天记录一般是不提供给我们获取的,所以一般情况下我们手机没root的话就拿不到了。就算是root后的手机,想要获取微信的EnMicroMsg.db文件并且解密它、打开它也有点难度。

下面我们就来演示怎么从安卓设备的手机中拿到微信的数据文件吧~

实验软件 :Android Studio实验设备:Root过的真机一部一、拿到数据库文件EnMicroMsg.db

一步步来,打开Android Studio的File Explorer:Tools –> Android –> Android Device Monitor

首先我们可以先随便运行一个项目,将真机作为调试工具,跑起来之后按照上面方式打开文件管理器,进入“/data/data/”我们可以看到是这样的:
这里写图片描述

可以看到有很多应用的项目路径,我们找到微信的,目录是:com.tencent.mm,这里其实会出现一个问题,就是权限不够打开/data/data目录其中就是需要进入到adb.exe所在的目录下,打开命令行形式,改变文件权限,由于安卓文件系统的内置问题,我们只好一层层地打开权限,才可以查看到里面的文件。可以参照下我的目录是:

D:\Users\Administrator\AppData\Local\Android\sdk\platform-tools

具体操作如下:

在此adb.exe所在的目录下打开命令行形式,按SHIFT+右键打开进入adb shell模式:在命令行中输入: adb shell 进一步进入root权限:在命令行输入: su这时候你在File Explorer中可以发现上面讲到的问题,就是文件夹打不开,这时候就需要你改变权限,但是权限的改变不是改变根文件夹的权限后子文件的权限也随着改变,比方你想改变/data/下的所有文件夹及其子文件夹文件的权限:chmod -R 777 /data/

这里写图片描述

会爆上面这个错,所以我们只好一层层改变权限,拿到我们需要的文件就好,依次输入命令:

chmod 777 /data/
chmod 777 /data/data/
chmod 777 /data/data/com.tencent.mm/
chmod 777 /data/data/com.tencent.mm/MicroMsg/
chmod 777 /data/data/com.tencent.mm/MicroMsg/01xxxxxxxxxxxxxx

改完权限我们就可以打开File Explorer中的文件了

这里写图片描述

看到以上目录后,就可以试着把EnMicroMsg.db这个文件pull出来

这里写图片描述 

ps:这里可能有些人会pull不出来,解决办法我在这篇文章上面有叙述:Android Studio中导出数据库文件的方法以及出现Failed to pull selection: open failed: Permission denied的解决思路

二、解密数据库文件

这一步比较简单,首先需要我们下载一个SQLcipher,SQLCipher开发得和开放源码的扩展,它提供的SQLite数据库的透明加密.数据页之前被写入加密存储和读取解密。

下载传送门:SQLcipher下载

我们试着打开EnMicroMsg.db,发现它被加密了!但是微信给数据库加密的方式实在太简单,我们可以轻松地破解,一破一个准!该数据库密码的生成是由微信uin跟手机IMEI两个字符串相加后去md5前七位

1、这里先要拿到微信uin,很简单,有两种方式可以获取:

第一种是 :→传送门 https://www.jb51.net/article/139995.htm

第二种呢,我们可以在shell命令行中cd进入:/data/data/com.tencent.mm/share_prefs/ 后 :

cat system_config_prefs.xml

然后我们就可以看到下面这张图片的信息:

这里写图片描述 

上面我们就可以清楚地看到了,标记了default_uin标签名对应的value值就是我们要找的uin了~

2、手机IMEI的获取:在手机拨号键输入:*#06# 即可获取

3、得到微信uin和手机IMEI相加,因为都是数字,加完之后还是数字,得到了一个最终的数字字符串,通过在线md5加密软件加密后去前7位就是密码了,输入密码我们就可以进入梦寐以求的db文件EnMicroMsg.db了!!!

这里写图片描述 

这里写图片描述

实验成功,教程结束,觉得可以就点个赞吧

更多精彩内容其他人还在看

Android网络编程之获取网络上的Json数据实例

这篇文章主要介绍了Android网络编程之获取网络上的Json数据实例,本文用完整的代码实例讲解了在Android中读取网络中Json数据的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中的windowSoftInputMode属性详解

这篇文章主要介绍了Android中的windowSoftInputMode属性详解,本文对windowSoftInputMode的9个属性做了详细总结,需要的朋友可以参考下
收藏 0 赞 0 分享

Android网络编程之UDP通信模型实例

这篇文章主要介绍了Android网络编程之UDP通信模型实例,本文给出了服务端代码和客户端代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中使用ListView实现漂亮的表格效果

这篇文章主要介绍了Android中使用ListView实现漂亮的表格效果,本文用详细的代码实例创建了一个股票行情表格,需要的朋友可以参考下
收藏 0 赞 0 分享

Android中刷新界面的二种方法

这篇文章主要介绍了Android中刷新界面的二种方法,本文使用Handler、postInvalidate两种方法实现界面刷新,需要的朋友可以参考下
收藏 0 赞 0 分享

Android SDK三种更新失败及其解决方法

这篇文章主要介绍了Android SDK三种更新失败及其解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(一)

Android3.0(API level 11)开始,Android设备不再需要专门的菜单键。随着这种变化,Android app应该取消对传统6项菜单的依赖。取而代之的是提供anction bar来提供基本的用户功能
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(二)

这次将继续上一篇文章没有讲完的Menu的学习,上下文菜单(Context menu)和弹出菜单(Popup menu)
收藏 0 赞 0 分享

Android学习笔记——Menu介绍(三)

今天继续昨天没有讲完的Menu的学习,主要是Popup Menu的学习,需要的朋友可以参考下
收藏 0 赞 0 分享

Android显示网络图片实例

这篇文章主要介绍了Android显示网络图片的方法,以实例形式展示了Android程序显示网络图片的方法,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多