V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
maomaosang
V2EX  ›  云计算

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

  •  1
     
  •   maomaosang · 2024-05-30 11:39:58 +08:00 · 9310 次点击
    这是一个创建于 406 天前的主题,其中的信息可能已经有所发展或是发生改变。

    昨晚偶然查看了公司的阿里云 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 条附言  ·  2024-06-04 11:12:28 +08:00
    感谢各位,这个帖子收到了很多有用的信息。我也把这两天查到的东西整理一下。

    类似情况:
    《阿里云的 CDN 也要慎用》 https://v2ex.com/t/903336
    《阿里云 CDN 被攻击,一早起来欠费 600 多停机了》 https://v2ex.com/t/848720
    《博客被攻击欠阿里云 cdn 费 350 快》 https://v2ex.com/t/592860

    关于省间结算:
    《电信的省间宽带流量结算来辣🥵!》 https://v2ex.com/t/1008228
    《吉林联通机房省间结算影响跨省访问》 https://v2ex.com/t/1007257

    阿里云获取真实 IP:
    方式 1:远程鉴权功能:在“URL 鉴权参数”中添加“$remote_addr”参数,然后鉴权 URL 收到的请求会包含真实 IP
    https://help.aliyun.com/zh/cdn/user-guide/configure-remote-authentication
    方式 2:实时日志功能:在实时日志中查看 remote_ip 字段。
    https://help.aliyun.com/zh/cdn/user-guide/overview-1

    没有确切的证据,我不能说攻击方是谁。但我认为事故的主要责任方还是 X:
    1.攻击特征明显、行为普遍、防御成本低,X 对产品没有做任何实质调整,只发布一则“风险提醒”。
    2.X 给到的应对方法,长篇大论罗列了各种可能的情况,却唯一“漏掉”了查询真实 IP 。
    3.即使找对了方向,要获得真实 IP 也很麻烦,历史日志没有真实 IP 。
    4.X 是最大受益者,谁拿钱,谁办事。

    不想给自己惹上麻烦,所以用 X 代替。我也向 X 提交了对此类行为进行提醒和防御的要求,以及对流量费和人工费索赔的诉求。其实这些内容我上周五就整理好了,给工作收个尾,但是 X 工单一直在踢皮球,4 天过去没有正面回应我的任何要求,和以前的工单一样,我只是自取其辱而已。但事总归要做一遍。

    最后再次提醒:记得在云监控里面加个监控,可以对 QPS 或流量进行监控,时间单位需要自己算好,几个界面的时间单位不一致。
    40 条回复    2024-08-01 10:30:27 +08:00
    HojiOShi
        1
    HojiOShi  
       2024-05-30 11:41:54 +08:00   ❤️ 1
    阿里云在监守自盗
    someone0123
        2
    someone0123  
       2024-05-30 11:44:20 +08:00   ❤️ 10
    还有一种可能是一些地方运营商在刷,他们好像会有跨省结算的问题,会通过刷流量来打平内部账单
    Moyyyyyyyyyyye
        3
    Moyyyyyyyyyyye  
    PRO
       2024-05-30 11:45:13 +08:00
    🤔xterminal 也遇到过,直接迁移出去了,任何方法都无法防止,固定时间固定频率,最大文件
    me1onsoda
        4
    me1onsoda  
       2024-05-30 11:46:59 +08:00
    刷流量不用成本吗
    zx900930
        5
    zx900930  
       2024-05-30 11:48:12 +08:00
    腾讯云也是一样
    刷最大的静态文件,刷了几个 T 的流量,几万块钱。
    zedpass
        6
    zedpass  
       2024-05-30 11:50:19 +08:00
    之前我也遇到过有用国内 IDC 的机器一直访问我们官网的 APK 下载链接,半年刷了二十多万的账单出来,不知道做这些损人不利己的操作是什么目的,一百多台机器 24 小时不间断访问半年的成本也不低了
    yuzo555
        7
    yuzo555  
       2024-05-30 11:54:19 +08:00
    有几个客户遇到了这个事情,现象一样,19:30 之后准时开始,23:00 准时停。
    不光是阿里云线路,我们这边其他包括腾讯云华为云线路都有遇到。

    攻击者 IP 来自中国境内各地的联通,没有电信和移动。
    个人赞成 #2 @someone0123 的判断。
    maomaosang
        8
    maomaosang  
    OP
       2024-05-30 11:54:45 +08:00
    再补充两点

    攻击 IP 还有 231.0.0.0/8 这个网段的,查出来是“组播地址”,这已经完全超过我的知识范围了……

    以及,虽然攻击 IP 大部分不属于中国大陆,但阿里云在计费时 99%的流量都算到了“中国内地”
    yuzo555
        9
    yuzo555  
       2024-05-30 11:56:43 +08:00
    有一个特点是它们似乎不在乎刷没刷成功,认定一个链接后我们运维把他 IP 封禁、响应 403 ,即使删除这个链接响应 404 或者其他错误,它们仍然继续刷。感觉可能是攻击范围太大,管不过来。
    maomaosang
        10
    maomaosang  
    OP
       2024-05-30 11:57:21 +08:00
    @someone0123 这个角度听起来有意思,也符合我上条阿里云都计费到中国内地的状况,但一个月 1000 块的流量费也太少了,是找小网站给它“积少成多”?
    mmlmml1
        11
    mmlmml1  
       2024-05-30 12:07:20 +08:00
    之前看到过有 PCDN 刷下载流量来降低上传/下载比例,来避免被运营商发现

    https://www.reddit.com/r/qBittorrent/comments/192c0nt/what_is_wrong_with_some_china_peers/
    maomaosang
        12
    maomaosang  
    OP
       2024-05-30 12:08:56 +08:00
    根据二楼信息找到一个讲“省间结算”帖子 https://v2ex.com/t/1007257
    maomaosang
        13
    maomaosang  
    OP
       2024-05-30 12:28:50 +08:00
    IP 的疑问解决了,阿里云 cdn 记录的是可以伪造的 xff 地址,不是真实 IP 地址
    https://help.aliyun.com/zh/cdn/user-guide/download-logs
    MartinWu
        14
    MartinWu  
       2024-05-30 12:40:48 +08:00
    我们七牛云这里也是同样的时间,同样的问题。。。
    bytesfold
        15
    bytesfold  
       2024-05-30 12:44:43 +08:00 via iPhone
    有一种测速网站会一直请求某个文件,不过不是定时的
    k452b
        16
    k452b  
       2024-05-30 13:01:41 +08:00
    还有这回事
    javalaw2010
        17
    javalaw2010  
       2024-05-30 13:05:40 +08:00
    我们也遇到过,ucloud ,单 IP 刷流量,请求我们的一个 apk 链接,被刷了一段时间之后如果不做出反制措施似乎会加大力度,我们 CDN 平时用的很少所以告警阈值设得很低,被我发现了,我拉黑之后还持续了大概一天多才停。
    lyc8503
        18
    lyc8503  
       2024-05-30 13:13:35 +08:00   ❤️ 3
    有种可能就是上面提到的 PCDN 或者违规使用家庭宽带的黑心 IDC:

    近期运营商开始省间结算,部分地区的家庭宽带要求上传/下载比例足够小,否则可能会被限速或者封宽带

    然后这些违规使用宽带的人就开始用脚本随机找链接刷下载流量,而且晚 20-23 点正好是 PCDN 上传高峰期

    前段时间各个高校的开源镜像站也被类似地刷过流量
    LiuJiang
        19
    LiuJiang  
       2024-05-30 13:17:14 +08:00
    哥们,要不提个阿里云工单问下?
    duanxianze
        20
    duanxianze  
       2024-05-30 13:28:53 +08:00
    赞同 2# 大概率运营商自己干的
    maomaosang
        21
    maomaosang  
    OP
       2024-05-30 13:51:27 +08:00
    @LiuJiang 我的第一个问题,在阿里云客服那里显然得不到答案。第二个问题,确实比较搞笑,查文档查到了,确实没想过阿里会做这么奇怪的设计(日志记录是 xff ip ),一度困在认为这是真实 ip 的井里,直到我看到计费是中国内地,才意识到很可能是个伪造 IP ,查文档确认了。

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

    所以正确的做法是不是应该是 增加 trustlist ,然后从右向左查找,找到的第一个不在 trustlist 里的 ip ,就任务是 访问者的 ip
    daisyfloor
        39
    daisyfloor  
       343 天前
    @maomaosang 按我上面的做法 从右向左找,不在 trustlist 里的 ,那这个山西联通的 IP ,就会被提到日志里。
    maomaosang
        40
    maomaosang  
    OP
       343 天前
    @daisyfloor 是的,阿里云的做法非常没有安全常识,对外部输入无限信任
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2899 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 12:54 · PVG 20:54 · LAX 05:54 · JFK 08:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.