小心chrome的dns请求泄漏隐私
刚才在调试自己写的程序的时候,用tcpdump监听了一下本机网卡的数据,结果发现有解析facebook、 docs.google.com等网站的dns请求。而我的chrome浏览器使用的是ssh/socks5全局代理,按理说本机不应该再解析dns了。
进入chrome://net-internals/#dns 查看,果然chrome已经缓存了我访问过的很多网站的dns数据。通过google查询知道,chrome采用了“Predict network actions”技术,这其中包括dns prefetch,可能是预先解析一下dns。
chrome的这种实现有个问题,既然我设置了全局代理,chrome不应该在本地再发起dns请求。比如想完全通过代理访问 docs.google.com,结果chrome先发出一个在本地dns解析docs.google.com的请求,直接将要访问的网站暴露了。这应该 算是chrome的一个bug吧。
可以通过关闭Predict network actions to improve page load performance选项来避免这种情况,但Predict network actions to improve page load performance选项似乎默认是打开的。
我的环境是 ubuntu 12.10 64bit + Chrome 24 + SwitchySharp,通过ssh/socks5全局代理上网。
建议把那行英文修改为中文:预测网络操作,以提高网页载入速度
我还找了半天
我事先所说的那个问题,莫非和这个机制有关?但是我那个无效网站,之前都没访问过,应该不存在缓存之类的问题啊。
可能吧