有个朋友上门寻求协助,带着她朋友的朋友的手机,说是手机硬件有问题,想把手机内的资料都备份出来,尤其是WeChat的聊天内容…我跟她说,那iTool等工具不就可以帮上忙了吗?没想到她早就试过了, 说iTool根本找不到WeChat的数据库EnMicroMsg.db,看来她真的是很想取出数据哈~下足功夫了…

其实,取出WeChat数据库还不算是个问题,重点是在取出后,如何萃取出里头的聊天内容,因为WeChat在Android里可是默认加密的数据库哦~但朋友嘛,只好尽力而为,帮帮她喽~毕竟,”凡走过必留下痕迹”,聊过的话,也必然还躺在数据库里头,真人面前不说假话…其实懂数据库特性者便知,所谓”删除”非真删除…

接下来,就请各位和在下化身为调查员,展开WeChat加密数据库的破解任务吧~先用iTool查看相关信息,很幸运的,这是支已root过的手机,处理起来也会方便多了…也许他/她当初只是为了取得手机的超级管理者权限以彻底的”玩”手机,但在这案例中,对欲破解Android中默认加密的WeChat数据库的我来说,便有了施力点,可说几乎是已成功了一半…现在各位更可以体认,为何说root是”两面刃”了吧~

1. 定位WeChat数据库所在位置并导出到计算机上进行后续处理

2.检视EnMicroMsg.db数据库内容,果然是加密的呢,想不到WeChat在Android的版本竟有如此的安全性哈..真是令人意外~

3.古人云:"有法必有破”,因此在破解前,先来研究一下它的加密原理

查到的数据显示,它的加密规则单纯,是利用IMEI搭配WeChat UIN,然后计算出MD5值,取前7码,这便是它的key.

IMEI-国际移动设备标识符-它可说是手机的身份证呢…是唯一识别,绝不会有2支机有同样的IMEI,这也是往往在犯罪侦查中,要扣押犯嫌手机之故,里头可是一个人生活的缩影…

UIN-微信用户的身份证号码,应该不用多加说明了…

4.找出手机的IMEI

有2个方式,随个人喜好:

a.)    拨号键盘按 *#06#

b.)    打开手机背盖,电池取出,可查看IMEI等相关信息

5.找出UIN,它位于档案system_config_prefs.xml中,搜寻字段 uin即可查到value

6.将IMEI与UIN合在一起(2个字符串中间不要自作聪明去加一些符号,不然死也解不了数据库…),算出一组MD5 Hash值,取其前7码

7.幸运的是,WeChat数据库所用的加密是开源的.因此可方便的找到相关资源.可以在不同操作系统平台运行后续的破解步骤.在此为简化步骤之故.直接用Windows版的SQLCipher来开启数据库

8.开启EnMicroMsg.db时,便会要求输入pragma key,请输入上述得到的前7码即可

9.拨云见日…总算可以看到聊天内容了

10.汇出聊天内容吧~产生成文件,方便她用字处理工具直接检视,无须再操作数据库.

后记:

皇天不负苦心人,友人想挖出手机内WeChat 6.0.1加密数据库的聊天内容,总算如愿以偿…

据了解,即使是知名取证设备大厂如xry等,目前尚无法有效处理WeChat的加密数据库..是WeChat版本太新关系吗?不太清楚…智能手机聊天App愈来愈进化了…”阅后即焚”的功能推陈出新,再加上”加密”,简直是固若金汤…未来要破解这类聊天App的聊天内容恐怕只会难上加难~

也许有人会说,那还不简单,聊天内容定期去删除就好啦~问题来了,这类聊天App软件都会将信息存在数据库中,而凡是只要存放在数据库中的数据,所谓"删除"也并非真正删除的..而只是注记,让它们隐身起来…除非真的用数据库工具或下指令去处理,不然数据,可是一直都在的哦~这也是我一开始对她所说的”凡走过必留下痕迹”…

Normal
0

0
2

false
false
false

EN-US
ZH-TW
X-NONE

凡聊过必留下痕迹-破解加密的WeChat数据库的更多相关文章

  1. Kittenblock画笔基础,移动留下痕迹的蝴蝶,图形化编程经验分享

    Kittenblock画笔基础,移动留下痕迹的蝴蝶,图形化编程经验分享 跟很多学生聊过,很多学生不是不努力,只是找不到感觉.有一点不可否认,同样在一个教室上课,同样是一个老师讲授,学习效果迥然不同.关 ...

  2. 破解加密PDF文件pdfcrack

    破解加密PDF文件pdfcrack   PDF是常见的文档格式.它允许用户设置双重密码来保护文档.第一重是用户密码(user password),当打开PDF文档,输入该密码.第二重是所有者密码(ow ...

  3. QT实现支持加密的Sqlite数据库引擎

    Sqlite数据库使用很广泛,我们经常会在发布一些小型软件的时候使用它,因为它不需要安装服务器.QT默认的数据库引擎是支持SQLITE数据库的,但并不支持对数据库加密,不加密的Sqlite数据库任何人 ...

  4. 巧用Red Gate SQL Compare破解加密了的存储过程和函数

      最近项目中遇到了一个遗留系统的存储过程和函数被加密了,网上找了半天,解决办法倒是有,但需要写一大堆脚本, 怕影响原系统的运行,就说先同步到其他服务器上去破解.没想到,打开Sql Compare一比 ...

  5. Unity防破解 —— 加密Dll与Key保护

        在阅读这篇文章之前,我在处理mono加密问题时,也是参考了雨凇的文章,所以建议先看一下雨凇写的关于加密Dll的文章: 1.Unity3D研究院之Android加密DLL与破解DLL .SO 2 ...

  6. LabVIEW - 破解加密vi

    步骤 使用二进制阅读软件打开加密vi 查找字段"00 00 00 30",其后的16位即可能是密码(可能查找到多个位置带有该字段,只有其中之一为密码位置) 将查找到的密码复制到MD ...

  7. sql2008破解加密存储过程

    网上的很多不能正确解密,出现空白,还好有这个,mark下了. Create PROCEDURE [dbo].[sp_windbidecrypt] (@procedure sysname = NULL, ...

  8. SQL SERVER 2008破解加密存储过程(修正存储过程过长解密出来是空白的问题)

    SQLServer2005里使用with encryption选项创建的存储过程仍然和sqlserver2000里一样,都是使用XOR进行了的加密.和2000不一样的是,在2005的系统表syscom ...

  9. 空间小姐姐生活照,我用python破解加密压缩包,无忧查看

    事情的经过是这样的: 又是奶茶,行吧行吧. 快点开工,争取李大伟回来之前搞定. 李大伟说是6位数字密码 那么我们可以利用python生成全部的六位数字密码 #生成从000000到99999的密码表f ...

随机推荐

  1. NeHe OpenGL教程 第八课:混合

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  2. 通过Application传递数据代码

    使用Application传递数据步骤如下:创建新class,取名MyApp,继承android.app.Application父类,并在MyApp中定义需要保存的属性     在整个Android程 ...

  3. win10,软件, 发布者不受信任怎么办

    这个方法比较管用:右键单击windows左下角,弹出右击菜单选择‘命令提示符(管理员)(A)’,然后用DOS命令安装程序.就可以了 PS:win10的cmd可以直接复制粘贴了.

  4. Inno Setup命令行安装卸载参数

    安装命令行参数安装程序接受可选的命令行参数.这些对于系统管理员以及其它程序调用安装程序时有用./SP- 在安装开始时禁用“这将安装... 你想继续吗?”的提示,当然,如果 [Setup] 段的指令 D ...

  5. POJ 1703

    种类并查集,基本思想是每次压缩路径都必须同时更新子节点和根节点的关系,这种关系是通过子节点和父亲节点的关系,以及父亲节点与根节点的关系运算出来. 压缩路径的findme();参考了大神的代码,做的第二 ...

  6. SQL执行的原理以及一些常见的关键字

    sql语句在面试里面问道的问题: sql的解析的顺序 1.where里面的条件是从右向左扫描解析 2.from里面的大表在前,小表在后,解析的顺序是从右向左解析. 3.left/right/inner ...

  7. 部署windows服务

    (1) cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319(2) InstallUtil.exe D:\SVN\zhongchao\开发\WeiXin ...

  8. winmail安装完成后,SMTP/POP3/ADMIN/HTTP/IMAP/LDAP服务不能启动?

    问题原因: 1.特殊端口被占用,可以用命令netstat -ano 查看 2.阿帕奇网络服务 httpd 未开启 解决方案:开启服务后,登录管理工具,点注册,它会自动跳出"httpd通过防火 ...

  9. Hadoop JobHistory

    hadoop jobhistory记录下已运行完的MapReduce作业信息并存放在指定的HDFS目录下,默认情况下是没有启动的,需要配置完后手工启动服务. mapred-site.xml添加如下配置 ...

  10. Redis附加功能之Redis事务

    一.事务 Redis 的事务功能允许用户将多个命令包裹起来,然后一次性地.按顺序地执行被包裹的所有命令.在事务执行的过程中,服务器不会中断事务而改去执行其他命令请求,只有在事务包裹的所有命令都被执行完 ...