经常用 charles/fiddler 进行抓包,但是每次都需要手动配置代理,换新设备的时候还需要配置证书比较麻烦。 基本拓扑是:互联网->WiFi->手机->设置代理(抓包点)
有没有一种方案是,手机连接 WiFi 之后,所有请求都是透明的?,大概如下的拓扑: 互联网->设置代理(抓包点)->WiFi->手机。 这样配置一次代理,以后需要抓包的设备直连这个 WiFi 就可以采集这个手机的所有网络请求了。目前主要面向 http/https 协议。
1
8yte 2023-03-29 15:51:45 +08:00 via Android
不了解,但是想问像你这样手机不配置 CA 的话,怎么欺骗手机然后解密 https 数据呢
|
4
op351 2023-03-29 16:14:30 +08:00 1
没有
除非手机发出的请求都是 http https 没有证书你是无法解密的 |
5
baobao1270 2023-03-29 16:21:38 +08:00
如果你的需求是不像在客户端配置 CA ,那别想了,不可能的,Middleman WiFi 是不可能解决你的问题的。
如果你的需求只是不想在手机上配置代理,那么有两个方案,可以添加 DHCP 选项指向你的抓包机,另一个方案是使用软路由在软路由上运行 tcpdump 。 |
6
lawler OP @baobao1270 #5 "在软路由上运行 tcpdump 。" 这个方案试过,抓到的数据是所有的流量,https 也不是明文。
|
7
baobao1270 2023-03-29 16:42:29 +08:00
所以我说了啊,你的需求是「不想在客户端配置 CA 」,这是不可能实现的需求。
|
8
bigdude 2023-03-29 17:04:13 +08:00
类似深信服这种有上网行为管理功能的防火墙不就能实现楼主的需求么,只有想不到,没有做不到
|
10
Senorsen 2023-03-29 17:25:55 +08:00
有 openwrt 或者纯 linux 系统的话,可以试着用 redsocks 配置一下,某个 ssid/vlan 下所有特定流量走 charles/mitmproxy 的代理。要写点 iptables/nftables ,不知道有没有现成的工具。
CA 还是要在被抓包设备安装的,不然客户端设备不认就会连接失败。 |
11
unnamedhao 2023-03-29 18:37:12 +08:00
贵的傻瓜的 surge
免费的自己搞的 路由上通过 tproxy 做透明代理 |
12
xiaofan305 2023-03-29 18:43:17 +08:00 via Android
美剧里的菠萝路由器,好像就是干这个的吧
|
13
iX8NEGGn 2023-03-30 03:12:49 +08:00
你猜为什么要发明 TLS
|