VPN 软件一般支持 SOCKS5 代理协议,而“中间人”抓包软件往往也支持 SOCKS5 代理服务。结合这两个特性,可以实现的抓包拓扑为:目标 App 的通信通过 VPN 通道转发到本地代理客户端,由本地代理客户端转发流量到代理服务器上,该代理服务器实际是抓包软件,再由抓包软件把请求转发到目标应用服务器上。
基本原理如下图所示:
1.云手机
目前所知道的有百度云手机,华为云手机,河马云手机。
2.SOCKS5客户端
如果云手机不支持SOCKS5转发模式,那么就需要安装SOCKS5客户端,也可以安装支持SOCKS5协议的代理软件如Kitsunebi,这里用Kitsunebi演示。
新建一个SOCKS代理服务配置,并指向 mitmproxy 机器 IP 和已配置的 SOCKS 服务端口:
运行Kitsu