昨晚偶然查看了公司的阿里云 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 服务加上监控。
1
HojiOShi 171 天前 1
阿里云在监守自盗
|
2
someone0123 171 天前 10
还有一种可能是一些地方运营商在刷,他们好像会有跨省结算的问题,会通过刷流量来打平内部账单
|
3
Moyyyyyyyyyyye 171 天前
🤔xterminal 也遇到过,直接迁移出去了,任何方法都无法防止,固定时间固定频率,最大文件
|
4
me1onsoda 171 天前
刷流量不用成本吗
|
5
zx900930 171 天前
腾讯云也是一样
刷最大的静态文件,刷了几个 T 的流量,几万块钱。 |
6
zedpass 171 天前
之前我也遇到过有用国内 IDC 的机器一直访问我们官网的 APK 下载链接,半年刷了二十多万的账单出来,不知道做这些损人不利己的操作是什么目的,一百多台机器 24 小时不间断访问半年的成本也不低了
|
7
yuzo555 171 天前
有几个客户遇到了这个事情,现象一样,19:30 之后准时开始,23:00 准时停。
不光是阿里云线路,我们这边其他包括腾讯云华为云线路都有遇到。 攻击者 IP 来自中国境内各地的联通,没有电信和移动。 个人赞成 #2 @someone0123 的判断。 |
8
maomaosang OP 再补充两点
攻击 IP 还有 231.0.0.0/8 这个网段的,查出来是“组播地址”,这已经完全超过我的知识范围了…… 以及,虽然攻击 IP 大部分不属于中国大陆,但阿里云在计费时 99%的流量都算到了“中国内地” |
9
yuzo555 171 天前
有一个特点是它们似乎不在乎刷没刷成功,认定一个链接后我们运维把他 IP 封禁、响应 403 ,即使删除这个链接响应 404 或者其他错误,它们仍然继续刷。感觉可能是攻击范围太大,管不过来。
|
10
maomaosang OP @someone0123 这个角度听起来有意思,也符合我上条阿里云都计费到中国内地的状况,但一个月 1000 块的流量费也太少了,是找小网站给它“积少成多”?
|
11
mmlmml1 171 天前
之前看到过有 PCDN 刷下载流量来降低上传/下载比例,来避免被运营商发现
https://www.reddit.com/r/qBittorrent/comments/192c0nt/what_is_wrong_with_some_china_peers/ |
12
maomaosang OP 根据二楼信息找到一个讲“省间结算”帖子 https://v2ex.com/t/1007257
|
13
maomaosang OP IP 的疑问解决了,阿里云 cdn 记录的是可以伪造的 xff 地址,不是真实 IP 地址
https://help.aliyun.com/zh/cdn/user-guide/download-logs |
14
MartinWu 171 天前
我们七牛云这里也是同样的时间,同样的问题。。。
|
15
bytesfold 171 天前 via iPhone
有一种测速网站会一直请求某个文件,不过不是定时的
|
16
k452b 171 天前
还有这回事
|
17
javalaw2010 171 天前
我们也遇到过,ucloud ,单 IP 刷流量,请求我们的一个 apk 链接,被刷了一段时间之后如果不做出反制措施似乎会加大力度,我们 CDN 平时用的很少所以告警阈值设得很低,被我发现了,我拉黑之后还持续了大概一天多才停。
|
18
lyc8503 171 天前 3
有种可能就是上面提到的 PCDN 或者违规使用家庭宽带的黑心 IDC:
近期运营商开始省间结算,部分地区的家庭宽带要求上传/下载比例足够小,否则可能会被限速或者封宽带 然后这些违规使用宽带的人就开始用脚本随机找链接刷下载流量,而且晚 20-23 点正好是 PCDN 上传高峰期 前段时间各个高校的开源镜像站也被类似地刷过流量 |
19
LiuJiang 171 天前
哥们,要不提个阿里云工单问下?
|
20
duanxianze 171 天前
赞同 2# 大概率运营商自己干的
|
21
maomaosang OP @LiuJiang 我的第一个问题,在阿里云客服那里显然得不到答案。第二个问题,确实比较搞笑,查文档查到了,确实没想过阿里会做这么奇怪的设计(日志记录是 xff ip ),一度困在认为这是真实 ip 的井里,直到我看到计费是中国内地,才意识到很可能是个伪造 IP ,查文档确认了。
阿里云官方在今年 2 月份发布了《高额账单风险警示》( https://help.aliyun.com/zh/cdn/product-overview/configure-high-bill-alerts ),很显然知道问题是广泛存在的,但通篇没有提到问题出现的原因,发布时间又说明这个问题可能是今年开始大规模爆发的。 |
22
xueling 171 天前
竟然还有这种情况,可以使用我的开源项目,https://github.com/xl-xueling/xl-lighthouse (单机版就可以)排查一下原因,通过 IP 、IP 头、IP 段、访问目标地址、访问时间段等方式进行流量统计和请求数统计(统计维度可以根据需要随意定制),拿到确凿证据后向云服务商投诉,看看能不能要求赔偿。
|
23
lstz 171 天前 via Android
用雷池可以解决吗
|
24
wushenlun 171 天前 via Android
对请求鉴权吧,用轻量级 js 或者重定向生成一个 token
|
25
lyxxxh2 171 天前
4 年前遇到过 刷一个 apk 文件
不过比较少 一个月也就 30g |
26
dandankele 171 天前
这是之前一个哥们在腾讯云类似的情况 https://mp.weixin.qq.com/s/ANFnbDXwuhKI99fgYRZ9ug
|
27
gadfly3173 171 天前 via Android
@maomaosang 不存在 100%在服务端获取真实 ip 的方法吧,即使你自建 cdn ,你在边缘节点忽略 xff 那只能拿到运营商的 ip 或者对面的代理的 ip
|
28
KepaThings 171 天前
遇到过,来自某个机房的 ip 段。拉黑了,还在不断请求,大概三天后,就没刷了。
|
29
likunyan 171 天前
国都都一个样,垃圾
|
30
likunyan 171 天前
国内
|
31
maomaosang OP @gadfly3173 确实不存在,但 xff 是最假的那个,也是在防御这种行为中最无用的那个。
与边缘节点通讯的 ip 就是我希望拿到的 ip ,如果请求者是内网 IP ,那么我要他的外网 IP ,如果他用了代理,我要他的代理 IP 。这种情况下,IP 特征是有意义的。而 xff ,只要对方是恶意的,这个字段就没有任何意义。 |
33
maomaosang OP 昨天找到了获取阿里云 cdn 真实 IP 的方法后,蹲守,查到是一个山西联通的 IP ,QPS 大几百都是这一个 IP 打的,那些全球各地的 IP 都是伪造 xff 头的。
在阿里云 cdn 拉黑该 IP 后,所有请求都由阿里直接回 403 了。 |
34
yestodayHadRain 170 天前
@maomaosang 比较好奇楼主是怎么获取真实 ip 的? 是把 cdn 缓存清掉,让请求到源站,然后源站 从 xff 里取吗?
|
35
MartinWu 170 天前 2
@maomaosang #33 同是被山西联通刷。。我被刷的是七牛云的
|
36
esee 170 天前
会不会是你们公司内部的人心怀不满搞点小动作?
|
37
maomaosang OP @esee 可能性存在,但不高,概率和路人嫉妒我长的太帅然后对我进行打击的概率差不多。
@yestodayHadRain 已经在 append 中补充,你说的这种我没试过。 @dandankele 最终的“预热”说我觉得站不住脚,很可能是客服瞎 bb 的,一千个 CDN 节点对资源进行主动预热,这种主动冲业绩的行为真的有点搞笑了。从文档来看,阿里和腾讯都是用户触发预热的,不会主动预热。 |
38
daisyfloor 108 天前
@maomaosang 我看文档的做法是 XFF 从左到右第一个。但通常即便是过 proxy ,转发者也是在右侧添加。
所以正确的做法是不是应该是 增加 trustlist ,然后从右向左查找,找到的第一个不在 trustlist 里的 ip ,就任务是 访问者的 ip |
39
daisyfloor 108 天前
@maomaosang 按我上面的做法 从右向左找,不在 trustlist 里的 ,那这个山西联通的 IP ,就会被提到日志里。
|
40
maomaosang OP @daisyfloor 是的,阿里云的做法非常没有安全常识,对外部输入无限信任
|