最近发现了一个应用,感觉已经超出了技术认知范围。
APP 应用伪装上架App Store的,这个 APP 应用内,能够在 运行APP期间,内部再运行一个微信,看了相关的类是微信的类 并且 Document 文件夹下,确实有微信的安装包。
APP 内运行 APP,难道APP 内做了个虚拟引擎?还是有啥黑科技的?真是超出认知范围了。有没有知道这是什么原理。
最近发现了一个应用,感觉已经超出了技术认知范围。
APP 应用伪装上架App Store的,这个 APP 应用内,能够在 运行APP期间,内部再运行一个微信,看了相关的类是微信的类 并且 Document 文件夹下,确实有微信的安装包。
APP 内运行 APP,难道APP 内做了个虚拟引擎?还是有啥黑科技的?真是超出认知范围了。有没有知道这是什么原理。
APP叫什么
有大牛或者知道的,可以研究研究,非常好奇。
这应用截图和界面都对不上。厉害了苹果,对普通开发者重拳出击,对黑产网开N面
这么,逆一下看看啊
正好也在研究,这是抓包到的wechat包http://statics.xnservice.com/localize2.data(改名zip后解压得到wechat.app),尝试通过dlopen加载wechat.app/wechat、wechat.app/frameworks/App.framework都失败了
看了下,原理应该是应用内部实现了dyld的功能,通过自定义的dyld加载了第三方的可执行文件,因为是自定义的dyld,代码签名可能就无所谓了,因为它加载过的可执行程序是解密过的。
应用核心部分做了混淆,能力有限,只能认怂。
真正的大佬总是会以各种刁钻的角度进行骚操作,确实是服。
真是骚操作了,确实。意想不到
来个大佬逆出来啊
还不如学习下dyld的原理来的快,毕竟开源
有道理 为啥iOS这么久都没有开源自定义的dyld 安卓都有unidbg
它有申请通知权限,不知道能不能收到微信的推送? 假如能,估计很有意思,用自己的推送收别人的通知
看了一下里面带的这个微信是重签名过的
下载看了下,确实有点意思。先研究下。
如果微信可以在容器里运行各方面功能正常且不闪退,那么理论上也能加载其他所有app正常运行
感觉如果这个技术掌握,如果能把其它 APP 也做成这样,那么马甲包了,多开了,什么的,甚至一个小型的手机APP 市场、感觉都是个冲击。
其实我在2016年就写过这个技巧,只不过那时候我dlopen的是sdk,微信盒子dlopen的是微信app,本质上没区别
https://www.jianshu.com/p/7f3d76d61bf1
实现dyld需要能分配到可执行的内存,我印象中iOS是不行的。我也比较好奇他是怎么实现的,如果没有重签名的话,我猜测可能有实现arm64的解释器,解释执行微信代码。
虚拟cpu来执行的
想法牛
根本就不是dlopen