CDN资源被盗刷记录

Last Updated on 2024-08-27 by likun.gong

问题

  1. 带宽使用从平时的 2Gbps 提升到了 20Gbps
  2. 每日的 CDN 费用从 2000 上涨到了 20000

处理

  1. 通过监控发现,现状已经持续了 5 天左右
  2. 查看运营报表(阿里云自带),发现有几个特定的 IP 一直在访问一个 APK 资源,并且过去 7 天下载了 1.4PB 的流量
  3. 在 CDN 控制台中封禁这些 IP,带宽使用下降
  4. 发现攻击者切换 IP ,继续访问这个 APK 资源,带宽使用上涨
  5. 配置此资源下载限速,一开始配置的 20MB,发现仅对单次连接生效,效果不佳,降低到最低限速 100Kb,带宽使用下降
  6. 攻击者还是在切换 IP 持续访问
  7. 确定资源是 2020 年的资源,目前已不在使用
  8. 从源站中重命名资源,刷新 CDN 缓存,从而清除 CDN 中的缓存
  9. 此时再访问资源 404,带宽使用恢复

思考

存在的问题:

  1. 没有及时发现流量被盗刷
  2. 没有限速机制
  3. 历史资源没有生命周期管理机制,一直存在

如果攻击者更换了新的 IP 和资源,我们应该怎么办?

  1. 需要考虑使用其他的特征来进行封禁,例如 User-Agent、Referer 等内容
  2. 考虑接入 WAF ,利用 WAF 来封禁

应该如何防止此类事件?

  1. 添加监控。对于按使用量计算的指标,可以添加对应的上限监控。例如:带宽、流量、费用
  2. 配置下载限速
  3. 建立资源的生命周期机制。没有资源的下线机制,冗余资源会越来越多

为什么被刷

网络上看到的解释,对比当时的场景十分符合,针对一个 url 不停的下载,去平衡 pcdn 的下载流量,避免家庭带宽上传过多被运营商封禁。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注