想必你们都遇到过一些APP在运行过程中, 不允许有网络代理的存在, 如果有网络代理, 就无法访问服务器. 这样也就无法让用户进行抓包分析了. 针对这种情况就需要免代理抓包, 但是也是有一定限制的. 工具是在PC端进行安装配置
首先需要用到的工具:
charles ----> 抓包工具
Proxifier ----> 代理转发工具
抓包也可以使用其他的工具(fiddler, wireshark, burp), 原理都一样. 关键就是这个Proxifier的设置.
因为我比较习惯使用 charles 来进行抓包了,所以这里就着重讲怎么用 charles+Proxifier来进行抓包.
charles下载地址: https://www.charlesproxy.com/download/
破解补丁生成地址:https://www.zzzmode.com/mytools/charles/
Proxifier下载地址: https://pan.baidu.com/s/1BHg6o_3xDhCxfGwoP5oYSA
提取码:1pk7
内附破解补丁
charles代理端口默认是8888, 新安装的应用 默认会抓取windows的所有流量包, 这一点因为我们后面会有Proxifier来转发, 所以关掉抓取windows
设置路径: 菜单栏-->Proxy-->Windows Proxy 如果前面有对勾符号,说明正在代理windows的流量, 如果没有,就不用点了
其他的也不用配置什么默认的就好. 下面说一下Proxifier的配置.
安装成功后. 启动应用, 如果启动应用以后屏幕上没有反应,也没有任何界面显示, 不要慌, 去你的任务栏中找找 看看有没有这样的图标:
双击一下这个图标就可以显示出界面了, 首先设置代理服务器
点击 Proxy Servers在弹出的界面中点击 Add 再如图所示,填入服务器IP和端口, 因为是本地IP所以写一个 回环地址 127.0.0.1即可, 端口就是 charles的代理端口 默认 8888
点击 OK以后会询问你是否将我们设置的这个服务器作为默认的, 直接点是 就行.
当你一路点击确定后, charles中已经有了数据包. 但是都是无法访问的, 而这时候, Proxifier中会弹一个窗口
这里的提示, 是因为我们开着charles了 charles和Proxifier都属于是代理抓包用的软件. 所以两个会冲突,导致无限循环的抓包, 它建议你创建一个直连规则给charles, 这里直接点击OK就行了.
下面就是设置一下代理规则. 如果你不嫌那些无效的包多, 你可以不用设置, 默认的规则也可以. 就是抓出来的包居多..不好分辨....
设置一下规则, 我这里用的是MuMu模拟器进行抓包的. MuMu模拟器的联网程序叫"NemuHeadless.exe", 所以设置一个规则, 只抓这个应用发出的网络请求.相对会减少很多的无效数据包.如图:
如图设置即可. 如果你是其他的模拟器, 也是一样的.只是每个模拟器的联网应用名称不同, 比如雷电的模拟器联网程序叫"LdVBoxHeadless.exe", 如果各个厂商命名都比较规范的话,模拟器的联网程序名都叫"xxxxHeadless.exe".按照这个规则自己去模拟器目录中翻翻就行了...
好的到这里免代理抓包的设置就完成了. 来看一下效果, 我这里想抓王者营地的包, 如果直接设置wifi代理的话. 王者营地是不允许的,会无法获取服务端的数据.那么 我现在来抓一下包, 看看是否可以抓到数据包.
用一个GIF图来展示一下:
如图, 本来无法抓包的APP 通过一层代理转发.则可正常的抓包了.
当然了这种方式, 也有一种局限性, 就是必须是这个app允许在x86的架构上运行, 如果不允许, 那这个方法就没辙了...
全部0条评论
快来发表一下你的评论吧 !