qq数据库(qq数据库解密) 最近看到网上有人专门针对如何破解qq、微信数据库,自己也想试试,于是就有了此文,主要讲下如何读取聊天信息,前提是需要一部root过的手机。 概述: 微信数据库加密方式; 微信多账户数据读取; 微信好友消息以及群消息; QQ消息加密方式; QQ讨论组消息; QQ群消息; QQ多账户数据读取; 1。微信数据库加密方式: 微信数据库加密方式已经有高人研究过了,就不细说了,主要是: Stringpassword〔1,7〕md5(imeiuin) 其中imei是手机的IMEI号,在拨号界面输入06即可看到,有手机有两个IMEI号,选择第一个IMEI号,关于双IMEI号如何读取,请自行google,不用重复造轮子了;uin是微信为每个用户分配的id,可以在如下路径找到 datadatacom。tencent。mmsharedprefsauthinfokeyprefs。xml 其中具体的信息如下: lt;?xmlversion39;1。039;encoding39;utf839;standalone39;yes39;?gt; lt;mapgt; lt;booleannamekeyauthinfoprefscreatedvaluetruegt; lt;intnamekeyauthupdateversionvalue637864511gt; lt;intnameauthuinvaluegt; 。。。。。。 lt;mapgt; 2。微信多账户数据读取:authuin的值value即为uin值,在代码中可以通过解析xml来读取uin的值;然后将imei和uin相加计算md5的结果,取前7位的值即为密码。 当多个账户在同一个手机上使用时,就会存在多个账户的数据库文件,但是在authinfokeyprefs中只有当前用户的uin的值,无法获取到历史的uin数据,不过仔细分析下数据库目录的父目录: datadatacom。tencent。mmMicroMsgc8201023c5887895fabf25da90b5fab8EnMicroMsg。db 经验证,确实如此,知道了文件名的构成,可以逆推uin的值,只不过是个计算的问题。那么话说回来,只有逆推才能得出uin的值吗?逆推有些繁琐,那么有没有简单的方法得到登录过的所有的uin的值呢?答案是肯定的,经过一番搜索,把每个目录都翻遍了,终于发现了 appbrandglobalsp。xml。xml文件,打开一看,大吃一惊,原来就是你,其中的具体信息如下:c8201023c5887895fabf25da90b5fab8可以看出来是个md5值,这个已经有人研究过了。 文件名md5(mmuin) 有了所有用户的uin,imei号也知道了,还有什么不知道呢,剩下的就是撸代码了。找的就是你,这个只是最新版微信测试的,之前的版本未测试。 3。微信好友消息及群消息读取: 既然密码知道了,那么就开始解密数据库了,工具sqlcipher。exe,这个已经有前人编译好的,直接下载用,打开数据库,聊天消息尽收眼底。 3。1好友消息与群消息的区别主要是message表中talker字段是否包括chatroom字样: 3。2好友,包括群聊昵称、id在rcontact表中可以查到; 3。3在message表中可以提取以下几个字段,基本上就可知道,聊天的内容了: 4。QQ消息加密方式 qq数据库并没有全库加密,而是对每条消息进行加密,加密的方式就是uin的md5值,uin就是用户的qq号码,每个聊天都会对应一个表,表名命名规则: mrfriendNew好友聊天 mrdiscussionuinNew讨论组聊天 mrtroopNew群聊 其中大部分字段都是加密的,需要对应的uin的md5来解密。每张表里面只需要提取以下字段就够了: selfuin本人的uinsenderuin发消息的uinmsgtype消息类型msgData消息内容issend是否为本人发送time时间 5。QQ讨论组消息: 所有的讨论组信息都在discussionInfo表中,可以找到讨论组的uin,然后根据uin构造表名称,根据表名称去查对应的表信息 6。群消息; 所有群的相关信息都记录在TroopInfo中,而且在TroopStatisticsInfo中记录了群的总数,这样一来就可以构造出每个群聊的表名称,根据表名称去查找对应的表信息即可 7。多账户数据读取; QQ当前账户的号码存储在datadatacom。tencent。mobileqqsharedprefsLastLogin。xml中: lt;mapgt; lt;setnameuinsetgt; lt;stringgt;123847323lt;stringgt; lt;stringgt;923847323lt;stringgt; lt;setgt; lt;mapgt; 其中uin就是当前登录的qq号码 相比微信来说,QQ多账户记录读取简单很多,在QQ数据库目录中的所有的账号数据库都在此,一目了然,并无什么特别的技巧。 基本上就这么些东西了,借助前人的研究做起来还是比较顺畅,如果真要整理出每条聊天消息,还是需要花些功夫的。 好了,就写到这里了,有什么不明白的可以留言!谢谢!