MacOS 上著名防火墙软件 Little Snitch,下面简称 LS,使用中发现并不能监控本地 PAC 代理,进一步发现默认设置的 LS 不能监控或过滤所有本机流量,推测是产品设计故意隐藏,毕竟有相当多本地 127.0.0.1 上的端口之间通讯不需要用户知情。
但这给所有使用本机 proxy 的用户带来相当大泄漏风险 -- 你以为开着防火墙和 PAC 代理,但只要 PAC 代理文件内设置了目标 hostname 或 IP,app 访问流量就会直接通过本地代理偷偷走掉了。
进一步和 LS 的技术团队沟通后,发现使用本地代理,并同时使用 PAC 的用户,在 LS 自带的 little snitch network monitor 里看到通过本机 PAC 走的流量同样被“误导性”的记录为远程目标,而没有任何它是从本机 PAC 代理跑掉的相关信息。
下面是 LS 技术支持目前给出的解决方式:
as for your question, there is a hidden rule that allows localhost connections. But you can for example create a High Priority Ask Rule to get over it. E.g. with this rule you get a connection alert for processes from your user, which connect to localhost (e.g. ssh localhost, if SSH is active):
But with such rules you should be careful. Processes usually do not assume that connections to localhost will be blocked for a long time, i.e. while the connection alert is pending.
简单来说,目前的方法是如上设置一个 high priority 的 ask 规则,用来每个连接进行确认,我测试过,如果不设置 hight priority,这条规则完全无效 <<-- 这也是好大一个坑
另外对于每个 app 进行设置 Deny any incoming connection,即便提高到 high priority,并 global,依然无效,流量依然会通过本地端口跑掉 <<-- 这是更大一个坑
1
Neoth OP - action: ask
- direction: outgoing - priority: high - process: any - owner: me - destination: 0.0.0.0, 127.0.0.1, ::-::1 如上设置。 |
2
Neoth OP 又发现进一步的 bug,
proxychains4 使用本机 proxy 情况下,在 little snitch 里无法被跟踪监控,无法过滤 。。。。 |
3
littiefish 2020-01-18 10:10:51 +08:00 via iPhone
mac 也需要防火墙?
我 win 都一直裸奔,补丁也没打过 |
4
icyalala 2020-01-18 10:39:39 +08:00
@littiefish 这个主要是监控和阻止 App 向外联网的
|
5
Neoth OP 深度用过才知道,不同 app 作者的水平和意图不同,甚至包括 apple 系统,都有大量的 「隐私泄漏」
更何况今天发现,很多 app 或 PAC 方式会泄漏。。。。真是。。。。想不到啊,little snitch 你也有今天 |
6
0xroot 2020-01-18 10:44:45 +08:00
路由器上挂代理可解决
|
8
loading 2020-01-18 14:53:32 +08:00
如果默认堵掉 127 估计很多软件直接说不兼容 LS,然后 LS 就会被垃圾桶了。
|
9
Neoth OP |
10
YY 2020-01-19 11:09:43 +08:00
怎么设置 priority: high 啊?
|
11
qgy18 2020-07-18 17:58:04 +08:00
我也遇到了这个问题,不过还好 Surge3 可以设置允许哪些应用使用代理。
|
12
tuochenlyu 2020-07-19 19:43:12 +08:00
正要入 little snitch,来 V2 上一看犹豫了
|