抱歉,Xposed真的可以为所欲为——6.你的表白撤不回了(下)

简介: 一步步Hook微信,实现微信消息防撤回。

3.胡乱分析第三波


在我以为一切大功告成,膨胀得沾沾自喜的时候,测试小哥发现了意外的发现了一个Bug, 发语音,图片,视频,虽然没撤回,但是打开失败,估计就是文件被删除了。


而Android里删除文件调用的是File类的delete方法,跟一波方法,直接搜File.delete看下是否真的有调用:



好吧,直接Hook掉File类的delete方法,看看微信删除对应类型文件的路径,观察一波这些路径的规律,然后如果delete方法被调用了,过滤一波,不删除文件,直接返回结果true,欺骗微信文件删除成功,以此瞒天过海~ 代码如下:



依次发送语音,图片,视频,然后撤回,对应的删除记录:



观察下路径规则,不难发现对应的文件夹是 voice2,image2,video,so过滤一波路

径,如果路径包含这三个 直接过滤设置返回值为True,另外公众号,外链,都是属于文本信息,只是微信做了特别的解析,比如上面那个 百度贴吧的,所以和普通信息一样处理就好。



然后发现只有语音能够正常打开,图片和视频都无法正常打开,跟了下路径,



用ES浏览器来到这个路径下:



这就很奇怪了,明明图片存在,但是就是不能正确加载,而且每次点开都会执行一次删除的操作, 就是说数据库里还保存着这个记录,撤销信息无非 删数据库记录+删文件,删文件肯定是没问题的, 那么问题肯定就出在删数据库记录那里了。跟踪一下SQLiteDatabase里的delete()方法,把参数和返回值打印下:



依次做:发送语音,发送图片,发送视频然后撤回的日志跟踪。





结合delete方法一起看:



结合上面的日志和delete方法的代码,可以得这样的结论:


  • 1.音频相关放在voiceinfo表里,图片相关放在ImgInfo2表里,而视频相关则放在videoinfo2表里。


  • 2.还有个WxFileIndex2表,从删除语句可以知道就是根据msgId去删除对应的文件记录,但是返回值却有1,6,2,0?


跟下返回值的代码:executeUpdateDelete()方法,在SQLiteStatement类



改变的行的数目?一般来说删除一条数据,正确执行完,受影响的行数会是1。 而只有语音能正常播放,难道是这个原因?hook下这个方法,如果第一个参数是这四个表, 直接把返回值设置成1试试~



发下信息然后撤回下试试~



行吧,视频和图片都能打开了,到此总算完美解决的,真的是一波三折。 接着改下UI页面,补上上次下厨房Hook Xposed检测的开光和防撤回开关。 最后的界面如下:




相关文章
|
小程序 数据安全/隐私保护
吐血整理的几十款小程序登陆界面【附完整代码】(一)
吐血整理的几十款小程序登陆界面【附完整代码】
6238 0
吐血整理的几十款小程序登陆界面【附完整代码】(一)
|
11月前
|
程序员
有了这些不愁找不到对象,520表白代码
有了这些不愁找不到对象,520表白代码
58 0
|
12月前
|
小程序 Windows
电脑可以刷微信朋友圈,这下能更好地摸鱼了?
电脑可以刷微信朋友圈,这下能更好地摸鱼了?
|
12月前
|
机器学习/深度学习 数据采集 人工智能
我也曾经因安装库而抓狂,直到我遇到了
我自己印象最深的是在 Mac 上安装 pycrypto(加密)和 scipy(科学计算)模块,折腾了很久。因为这类模块并不是单纯的 Python 代码,而是需要调用诸如 C 语言的库,于是就牵涉到在不同平台上的编译,有些还不能很方便地用虚拟环境分离版本。
|
小程序
吐血整理的几十款小程序登陆界面【附完整代码】(二)
吐血整理的几十款小程序登陆界面【附完整代码】(二)
323 0
吐血整理的几十款小程序登陆界面【附完整代码】(二)
|
小程序
吐血整理的几十款小程序登陆界面【附完整代码】(三)
吐血整理的几十款小程序登陆界面【附完整代码】(三)
406 0
吐血整理的几十款小程序登陆界面【附完整代码】(三)
|
数据库
|
数据库管理
|
安全 开发工具 Windows
抱歉,Xposed真的可以为所欲为——5.我自己刷的Xposed凭什么不给我用(上)
分析定位排查下厨房APP检测手机是否安装了Xposed框架的方法,然后一步步 Hook掉对应代码,以此去掉恶心的重复弹出警告对话框。
245 0
|
Java Android开发 Kotlin
抱歉,Xposed真的可以为所欲为——5.我自己刷的Xposed凭什么不给我用(下)
分析定位排查下厨房APP检测手机是否安装了Xposed框架的方法,然后一步步 Hook掉对应代码,以此去掉恶心的重复弹出警告对话框。
195 0