公司的阿里云 CDN 每晚都在被偷偷刷量

171 天前
 maomaosang

昨晚偶然查看了公司的阿里云 CDN 监控,发现被偷偷刷量了。

攻击方式是每晚 20-23 点,会用几千个 IP 请求一个 100M 左右的 exe 文件,和一个十几 k 的静态文件,以非常稳定的带宽占用刷掉 100-700G 的流量,然后安静的结束。从 4 月中旬攻击到昨天晚上。然后我们换掉了文件名,CDN 返回 404 ,攻击仍然持续到 23 点准时结束。我们是买流量包用的,一次会买大半年的用量,所以之前没有发现。

有几点非常奇怪,想请教一下各位:

1.我们正常的每天用量大约是 30-50G ,每个月 1T 出头。费用是 126 元/T 。黑客用一个半月的时间,大约刷掉了 8T ,大概是一千块。这个费用对公司不痛不痒,目的是什么?(希望黑客不要看到这条后给我加个零)

2.攻击 IP 非常诡异,除了全世界各地&全国各地的 IP 地址以外,还有一些 6.开头和 0.开头的 IP ,我查询之后发现分别是美国 DoD 和 IANA 的保留地址,前者还勉强可以说通,责任全在米方,保留地址是啥情况?这些 IP 地址来自阿里云后台下载的 CDN 访问记录。

提醒大家为 CDN 服务加上监控。

8240 次点击
所在节点    云计算
40 条回复
maomaosang
171 天前
@LiuJiang 我的第一个问题,在阿里云客服那里显然得不到答案。第二个问题,确实比较搞笑,查文档查到了,确实没想过阿里会做这么奇怪的设计(日志记录是 xff ip ),一度困在认为这是真实 ip 的井里,直到我看到计费是中国内地,才意识到很可能是个伪造 IP ,查文档确认了。

阿里云官方在今年 2 月份发布了《高额账单风险警示》( https://help.aliyun.com/zh/cdn/product-overview/configure-high-bill-alerts ),很显然知道问题是广泛存在的,但通篇没有提到问题出现的原因,发布时间又说明这个问题可能是今年开始大规模爆发的。
xueling
171 天前
竟然还有这种情况,可以使用我的开源项目,https://github.com/xl-xueling/xl-lighthouse (单机版就可以)排查一下原因,通过 IP 、IP 头、IP 段、访问目标地址、访问时间段等方式进行流量统计和请求数统计(统计维度可以根据需要随意定制),拿到确凿证据后向云服务商投诉,看看能不能要求赔偿。
lstz
171 天前
用雷池可以解决吗
wushenlun
171 天前
对请求鉴权吧,用轻量级 js 或者重定向生成一个 token
lyxxxh2
171 天前
4 年前遇到过 刷一个 apk 文件
不过比较少 一个月也就 30g
dandankele
171 天前
这是之前一个哥们在腾讯云类似的情况 https://mp.weixin.qq.com/s/ANFnbDXwuhKI99fgYRZ9ug
gadfly3173
171 天前
@maomaosang 不存在 100%在服务端获取真实 ip 的方法吧,即使你自建 cdn ,你在边缘节点忽略 xff 那只能拿到运营商的 ip 或者对面的代理的 ip
KepaThings
171 天前
遇到过,来自某个机房的 ip 段。拉黑了,还在不断请求,大概三天后,就没刷了。
likunyan
171 天前
国都都一个样,垃圾
likunyan
171 天前
国内
maomaosang
171 天前
@gadfly3173 确实不存在,但 xff 是最假的那个,也是在防御这种行为中最无用的那个。
与边缘节点通讯的 ip 就是我希望拿到的 ip ,如果请求者是内网 IP ,那么我要他的外网 IP ,如果他用了代理,我要他的代理 IP 。这种情况下,IP 特征是有意义的。而 xff ,只要对方是恶意的,这个字段就没有任何意义。
daimaosix
171 天前
@lstz 当然不可,雷池能往 CDN 部署吗,显然不能。
maomaosang
171 天前
昨天找到了获取阿里云 cdn 真实 IP 的方法后,蹲守,查到是一个山西联通的 IP ,QPS 大几百都是这一个 IP 打的,那些全球各地的 IP 都是伪造 xff 头的。
在阿里云 cdn 拉黑该 IP 后,所有请求都由阿里直接回 403 了。
yestodayHadRain
170 天前
@maomaosang 比较好奇楼主是怎么获取真实 ip 的? 是把 cdn 缓存清掉,让请求到源站,然后源站 从 xff 里取吗?
MartinWu
170 天前
@maomaosang #33 同是被山西联通刷。。我被刷的是七牛云的
esee
170 天前
会不会是你们公司内部的人心怀不满搞点小动作?
maomaosang
166 天前
@esee 可能性存在,但不高,概率和路人嫉妒我长的太帅然后对我进行打击的概率差不多。
@yestodayHadRain 已经在 append 中补充,你说的这种我没试过。
@dandankele 最终的“预热”说我觉得站不住脚,很可能是客服瞎 bb 的,一千个 CDN 节点对资源进行主动预热,这种主动冲业绩的行为真的有点搞笑了。从文档来看,阿里和腾讯都是用户触发预热的,不会主动预热。
daisyfloor
108 天前
@maomaosang 我看文档的做法是 XFF 从左到右第一个。但通常即便是过 proxy ,转发者也是在右侧添加。

所以正确的做法是不是应该是 增加 trustlist ,然后从右向左查找,找到的第一个不在 trustlist 里的 ip ,就任务是 访问者的 ip
daisyfloor
108 天前
@maomaosang 按我上面的做法 从右向左找,不在 trustlist 里的 ,那这个山西联通的 IP ,就会被提到日志里。
maomaosang
108 天前
@daisyfloor 是的,阿里云的做法非常没有安全常识,对外部输入无限信任

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

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

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

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

© 2021 V2EX