Cloudflare 之前写过一篇文章,大意是吐槽有几个运营商不愿意和他们免费 peer 并征收很高的带宽费用,作为回应,他们调整了 Free 和 Pro 用户的路由,当这几个运营商的用户访问网站时,会从较远但是更便宜的 PoP 发送数据。
不过,Cloudflare 似乎只是对不同用户采用不同的 IP,并没有从更高层隔离用户,于是疑似出现了漏洞。比方说选取 images.weserv.nl (Free plan)为例,从 Vultr 的东京节点访问,会命中香港:
$ curl -4 https://images.weserv.nl/cdn-cgi/trace
fl=23f117
h=images.weserv.nl
ip=45.32.58.68
ts=1522918061.576
visit_scheme=https
uag=curl/7.58.0
colo=HKG
spdy=off
http=http/1.1
loc=JP
但是如果强制 curl 从 Digitalocean (Enterprise)的任播地址访问,就可以直接命中东京:
$ curl -4 https://images.weserv.nl/cdn-cgi/trace --resolve 'images.weserv.nl:443:104.16.24.4'
fl=22f74
h=images.weserv.nl
ip=45.32.58.68
ts=1522918051.22
visit_scheme=https
uag=curl/7.58.0
colo=NRT
spdy=off
http=http/1.1
loc=JP
这样的话,如果通过 Partner API 使用 Cloudflare,但是同时将使用了 CDN 的域名解析到企业版 Cloudflare 用户的 IP 地址上,岂不是免费享受了 Enterprise 用户才能使用的路由?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.