之前看到 https://v2ex.com/t/674098 ,https://www.v2ex.com/t/543353 有吐槽 iOS 分应用代理功能,最近发现一种思路,就是给 App 注入带代理功能的动态库,然后重签名后安装到手机上使用,实现 app 内所有网络请求都走代理,深信服就是这么做的
比如拿到一个 Chrome App,砸壳后注入动态库、重签名,安装到手机就可以实现代理上网了。
注入动态库、重签名这些都比较好说了,现在问题就转化为如何实现应用内代理了。早前有一个 AppProxyCap 好像是可以实现 app 应用内代理的,不过据说 iOS7 之后就不能用了。我比较好奇的是,如果一个 iOS App 没有使用苹果文档上的网络请求 api,而且自己实现的网络 api,是不是也能做到这一点。
比如拿到一个 Chrome App,砸壳后注入动态库、重签名,安装到手机就可以实现代理上网了。
注入动态库、重签名这些都比较好说了,现在问题就转化为如何实现应用内代理了。早前有一个 AppProxyCap 好像是可以实现 app 应用内代理的,不过据说 iOS7 之后就不能用了。我比较好奇的是,如果一个 iOS App 没有使用苹果文档上的网络请求 api,而且自己实现的网络 api,是不是也能做到这一点。