黑客破解微信数据库获得微信记录和位置
最近很多人留言问能不能获取取微信里面的通讯录,聊天记录等等,我们依次尝试的如下几个方案:总体来说已经实现
1。通过群控,将好友截图发送到服务端(python),利用python的图像识别库来获取好友的信息。
2。开发一个app,使用android自带AccessibilityService,模拟用户操作微信,然后获取屏幕中的内容。
3。破解微信的本地数据库。
我们是怎么知道微信把用户以及聊天的信息存到了本地数据库呢?
当我们打开手机的飞行模式的时候,打开微信,依旧可以看到里面的通讯录以及聊天记录。那么就说明微信肯定是将你能看到的所有信息都保存在了本地数据库里面,只是他将本地数据库加了密。既然存在了本地,我们就有办法把它取出来。
本地数据库的密码是什么呢?
请具体参考大神的文章,他通过反编译获取到微信的加密规则,特别厉害!
上述文章讲解主要是静态破解数据库,我们就基于他的静态破解方法,介绍下如何在代码中动态破解。不想看的同学们,我就直接介绍下微信本地数据库的加密规则了:
。获取手机IMEI码
2。获取当前登录微信账号的uin(存储在sp里面)
3。拼接IMEI和uin
4。将拼接完的字符串进行md5加密
5。截取加完密的字符串的前七位(字母必须为小写)
那七位字符串就是数据库的密码了。因为微信已经有数亿的用户了,并且本地数据库又是存在用户的手机上,所以微信肯定不会轻易的对数据库进行大规模修改,所以密码的加密规则也是不可能变的,大家就放心用吧!
适用范围:已经获取root权限的手机
如果你的手机没有root,那下面的代码对你手机都是无效的哦
下面正式进入主题
一、大致浏览下微信的目录
1。连接上你的手机,打开开发者模式
2。打开AndroidDeviceMonitor
3。进入到FileExplorer子页,查看微信目录datadatacom。tencent。mm
如果你发现文件夹打不开,或者发现点击data目录里面没有内容,可能是因为没有权限,请在Command中依次执行如下命令:
大概的介绍下微信的目录结构,本地数据库都在MicroMsg文件夹里面,SharedPerferences文件都在sharedprefs文件夹里面。之前说的获取数据库密码时候需要的uin就是存在微信的SharedPreferences里面,对应的是datadatacom。tencent。mmsharedprefs文件夹。
微信的本地数据库存放在datadatacom。tencent。mmMicroMsg里面的一长串字符串的目录里面
注意:如果你登录过多个账号就会出现多个此类的文件夹,所以我们在之后的代码中会通过循环来查找当前登录用户对应的数据库文件
二、授予当前app管理员权限以及修改微信目录的读写权限
最好在app一启动就执行下面的代码,并且在每次获取数据库内容的时候也要再次执行,避免出现无权限读取微信相关文件的异常
publicstaticfinalStringWXROOTPATHdatadatacom。tencent。mm;
execRootCmd(chmod777RWXROOTPATH);
执行linux指令
paramparamString
publicvoidexecRootCmd(StringparamString){
try{
ProcesslocalProcessRuntime。getRuntime()。exec(su);
ObjectlocalObjectlocalProcess。getOutputStream();
DataOutputStreamlocalDataOutputStreamnewDataOutputStream((OutputStream)localObject);
StringstrString。valueOf(paramString);
localObjectstrn;
localDataOutputStream。writeBytes((String)localObject);
localDataOutputStream。flush();
localDataOutputStream。writeBytes(exitn);
localDataOutputStream。flush();
localProcess。waitFor();
localObjectlocalProcess。exitValue();
}catch(ExceptionlocalException){
localException。printStackTrace();
每次准备读取数据库之前都需要执行一次该命令。ProcesslocalProcessRuntime。getRuntime()。exec(su)先通过这个命令,使得当前app获取到root权限,然后再通过chmod命令来修改微信的data目录的读写权限,因为我们需要操作读取微信的数据库文件以及sp文件,所以必须要有微信文件的操作权限。
获取手机IMEI
IMEI的获取方法就很简单了,相信各位都知道吧。唯一注意的就是要添加权限
获取微信的uin
微信的uin是存储在SharedPerferences里面,所以我们要在微信目录的sharedprefs文件夹里面查找其存放的xml文件,然后去解析它。
获取微信的uid
微信的uid存储在SharedPreferences里面
存储位置datadatacom。tencent。mmsharedprefsauthinfokeyprefs。xml
privatevoidinitCurrWxUin(){
mCurrWxUinnull;
FilefilenewFile(WXSPUINPATH);
try{
FileInputStreaminnewFileInputStream(file);
SAXReadersaxReadernewSAXReader();
DocumentdocumentsaxReader。read(in);
Elementrootdocument。getRootElement();
Listlt;Elementgt;elementsroot。elements();
for(Elementelement:elements){
if(authuin。equals(element。attributeValue(name))){
mCurrWxUinelement。attributeValue(value);
}
}
}catch(Exceptione){
e。printStackTrace();
LogUtil。log(获取微信uid失败,请检查authinfokeyprefs文件权限);
微信的uin是存放在sharedPerferences文件夹里面的,具体路径为datadatacom。tencent。mmsharedprefsauthinfokeyprefs。xml。让我们来打开这个xml文件看看里面到底是什么样子的,还有我们需要的uin到底是存放在什么地方:
我们解析xml用的dom4j这个库里面的SAXReader,如果没有这个库的同学可以去这里下载
五、生成数据库密码
这一步比较容易,通过拼接字符串以及md5加密后就可以获取到数据库的密码
六、查找微信目录下的数据库文件
因为我们需要通过密码来连接微信的EnMicroMsg。db文件,所以我们需要先通过匹配算法把我们需要的db文件给查找出来。如果该手机的用户切换过登录账号,那么每个账号都会生成一个EnMicroMsg。db,所以我们要把所有的db文件都给匹配出来。
七、连接数据库
终于到了最关键的一步了。这时候需要注意两点:
1。我们千万不可以直接通过net。sqlcipher。database。SQLiteDatabase这个类来连接我们上一步里面查找到的微信目录下的EnMicroMsg。db文件,可能是因为一个数据库文件不能被多次连接的情况,只要我们一成功连接上那个db文件,微信的客户端就会自动退出登录,并且会出现异常。所有我现在的做法是把这个db文件拷贝到我们自己的app目录下,再进行连接。
2。当我们有多账号登录过,就会存在多个EnMicroMsg。db文件,但是我们的数据库密码只有一个,也就是说通过这个密码能连接成功的数据库就表明是当前微信登录用户的数据库。因为sqlcipher这个库中没有提供校验密码的方法,所以我们只能每次通过强行连接来判断密码是否正确,如果正确的话代码就会正常执行,错误的话就会抛出异常,因此我们要在这个方法外面加上trycatch来处理密码错误的异常。
叛逆者正在热播引路人王阳带领后辈破风前行昨日,由周游执导的年代谍战剧《叛逆者》正式开播。该剧由中央电视台、爱奇艺、新丽电视共同出品,根据人民文学奖得主畀愚同名小说改编。讲述了林楠笙(朱一龙饰)被陈默群(王阳饰)赏识成……
有没有什么好玩的软件可推荐?我自认为喜欢尝试各种应用。今天我给大家推荐几款我比较喜欢的应用。我想一些喜欢玩机的人,老司机都会喜欢的。第一个,VIP浏览器,顾名思义,可以看所有主流视频网站的VIP视频……
释小龙大侠霍元甲圆满收官精准演绎获好评星关系8月13日讯由李莅樱任总制片人,郭靖宇任总编剧,柏杉任总导演、刘方任导演,赵文卓,毛林林、释小龙主演的中华武术正剧《大侠霍元甲》于昨日在央视圆满收官。凭借着热血沸腾的剧情……
释小龙大侠霍元甲打戏高燃人设稚嫩莽撞引热议星关系8月10日讯由柏杉、刘方执导,郭靖宇编剧,赵文卓、毛林林、释小龙主演的中华武术正剧《大侠霍元甲》昨日迎来剧情高潮。该剧讲述了清朝末年,一代武术宗师霍元甲面对内忧外患的国家……
释小龙版陈真正式上线大侠霍元甲少年陈真初露锋芒星关系8月6日讯由柏杉、刘方执导,郭靖宇编剧,赵文卓、毛林林、释小龙主演的中华武术正剧《大侠霍元甲》已经开播过半,该剧讲述了清朝末年,一代武术宗师霍元甲面对内忧外患的国家危难,……
碳基才是芯片上的皇冠,或许可以绕过光刻机美国掐住光刻机不卖,中国想要自己造出来可能会面临两个困境:第一:要多长时间才能造出媲美ASML的EUV光刻机;第二、是否会陷入当年攻克汽车发动机技术的迷魂阵,几十年都突破不了。……
雪地娘子军发唯美剧照邱胜翊被赞最帅神枪手星关系2月26日讯近日,由张多福导演、由甲编剧,王笛、王子邱胜翊领衔主演的主旋律抗战剧《雪地娘子军》目前在贵州卫视播出已近尾声,收视口碑双丰收。伴随着剧情的发展,王子邱胜翊饰演……
雪地娘子军剧情渐入佳境邱胜翊新郎装被表白星关系2月15日讯由张多福导演、由甲编剧,王笛、王子邱胜翊领衔主演的主旋律抗战剧《雪地娘子军》正在贵州卫视黄金档热播中。新播出的剧集中,邱胜翊饰演的金喜宝与杨凯楠这对欢喜冤家开……
滴滴企业版等25款App,下架据国家网信办9日消息,根据举报,经检测核实,滴滴企业版等25款App(列表附后)存在严重违法违规收集使用个人信息问题。国家互联网信息办公室依据《中华人民共和国网络安……
首款OLEDiPad新机曝光,iPadAir4沦为百元机任性屏幕供应链咨询公司(DSCC)今天在其最新的季度OLED出货量报告中表示,苹果预计将在2023年推出其首款OLEDiPad。苹果将以10。9英寸AMOLEDAMiPad进入市场……
vivo手机在国产手机中处于什么水平?手机的质量关乎着手机的使用体验以及手机使用的时长。在国产手机当中,vivo手机的质量是相当好的,在使用过vivo手机的用户之中对于vivo手机的质量都表示赞同。vivo手机的故……
原来的配方却不是熟悉的味道,多亲1S电话让人很意外?前言:时隔大半年,多亲AI电话又推出了升级版,这次推出的版本是多亲1S升级版,它很多功能都进行了升级,不过它依然走的是老人机设计路线,因为老人机一直有需求,多亲AI电话去……