文档中心 > 对象存储 OSS

OSS异常流量排查及防护

更新时间: 访问次数:3750

概述

OSS被攻击恶意刷流量,出现大量的异常流量时,可能是由于恶意Referer盗链或者恶意IP请求访问OSS资源导致的。针对该情况,本文介绍如何排查及防护OSS的异常流量。

详细信息

排查并分析异常流量

异常流量主要分为恶意IP访问和恶意Referer访问,详情如下:

恶意IP访问

通过如下两种方法,定位恶意IP,然后参见防护恶意IP,进行防护。

OSS管理控制台的热点统计数据

通过对象存储OSS管理控制台的热点统计数据,进行恶意IP定位,详情请参见用量查询

  1. 登录OSS管理控制台,在左侧导航栏中单击Bucket列表,选择目标Bucket的名称进入Bucket概览页面。
  2. 菜单栏中依次选择数据统计>热点统计,切换到热点标签页。
  3. 查看IP(TOP 10)列表,结合业务的实际情况判断这些IP对应的错误访问次数流量以及PV是否正常。
Bucket的访问日志

可通过以下两种方法查看Bucket的访问日志:

  • 访问日志存储
    此方法需要Bucket已经开启OSS访问日志,详情请参见开启OSS访问日志。通过日志分析工具分析Bucket的访问日志,例如使用awk命令过滤非CDN回源请求的Top IP地址,示例命令如下。最终判断Top IP是否为恶意IP。
    cat mylog-oss-example2017-09-10-04-00-00-0000 |awk '{if ($(NF-1) ~/-/) print $1}' | sort |uniq -c|sort -nr -k 1|head -20
    说明 :OSS日志各字段说明请参见 访问日志存储
  • 实时日志查询
    通过查看实时日志,过滤非CDN回源请求的Top IP地址,详情请参见实时日志查询
防护恶意IP

根据Bucket的访问权限选择对应的防护方法:

  • Bucket为私有权限:建议迁移数据到新的Bucket中,详情请参见迁移数据,新Bucket的访问权限也应该为私有,通过高防IP或者WAF防护的自定义域名对外提供服务,详情请参见自定义域名
  • Bucket为公共读权限:建议选择下列一种防护方法。
    • 将Bucket访问权限改为私有,通过签名后的URL对外提供服务。私有Bucket可以增加恶意下载的成本,但是也需要业务端集成签名算法,详情请参见集成签名算法,因此会产生一定的开发成本。
    • (推荐)迁移数据到新的Bucket中,详情请参见迁移数据,通过高防IP或者WAF防护的自定义域名对外提供服务,详情请参见自定义域名
    • 迁移数据到新的Bucket中,使用自定义域名对外提供服务,同时开启CDN加速,利用CDN的IP黑名单进行限制访问。详情请参见IP黑名单
      说明:CDN的IP黑名单存在数量限制。

恶意Referer访问

通过以下两种方法,定位恶意Referer访问,然后通过OSS管理控制台或者API的方式设置Bucket的防盗链进行防护,详情请参见防盗链

OSS管理控制台的热点统计数据
  1. 登录OSS管理控制台,在左侧导航栏中单击Bucket列表,选择目标Bucket的名称进入Bucket概览页面。
  2. 菜单栏中依次选择数据统计>热点统计,切换到热点标签页。
  3. 查看Refer(TOP 10)列表,结合业务的实际情况判断Refer对应的访问次数是否正常。
Bucket的访问日志

可通过以下两种方法查看Bucket的访问日志:

  • 访问日志存储
    此方法需要Bucket已经开启OSS访问日志,详情请参见开启OSS访问日志。通过日志分析工具分析Bucket的访问日志,例如使用awk命令过滤Top Referer,判断其是否为恶意Referer。
    说明 :OSS日志各字段说明请参见 访问日志存储
  • 实时日志查询
    通过查看实时日志,过滤非CDN回源请求的Top IP地址,详情请参见实时日志查询

针对攻击的预防措施

当您的OSS Bucket遭受攻击或通过Bucket分享违法内容,OSS会自动将Bucket切入沙箱。沙箱中的Bucket仍可以正常响应请求,但服务质量将被降级,您的应用可能会有明显感知。为防止您的Bucket因攻击原因被切入沙箱,可以按照以下方案添加预防措施:

说明:若您的Bucket被切入沙箱,请参见OSS沙箱,进行处理。

OSS高防

OSS高防是OSS结合DDoS高防推出的DDoS攻击代理防护服务。当受保护的存储空间(Bucket)遭受大流量攻击时,OSS高防会将攻击流量牵引至高防集群进行清洗,并将正常访问流量回源到目标Bucket,确保业务的正常进行。您只需在OSS管理控制台进行简单的配置即可开启Bucket的高防保护。具体配置方式,请参见配置OSS高防

高防IP防护

参考如下步骤,通过高防IP防护OSS。更多信息请参见高防IP接入配置

  1. 登录OSS管理控制台开启Bucket的自定义域名,详情请参见自定义域名,但是不要在DNS中添加CNAME解析到Bucket域名。
  2. 登录云盾DDoS防护管理控制台,配置高防IP,将自定义域名作为被防护的网站,Bucket域名作为高防IP的源站域名。
  3. 登录云解析DNS控制台配置DNS解析,为自定义域名添加一条CNAME记录,指向高防IP提供的CNAME地址。

WAF防护

参考如下步骤,通过WAF防护OSS。更多信息请参见WAF使用教程

  1. 登录OSS管理控制台开启Bucket的自定义域名,详情请参见自定义域名,但是不要在DNS中添加CNAME解析到Bucket域名。
  2. 登录Web应用防火墙控制台,配置Web应用防火墙,将自定义域名作为网站域名,Bucket域名作为WAF的回源域名,详情请参见网站接入
  3. 在左侧导航栏,单击资产中心>网站接入
  4. 域名列表中定位到已添加的域名,将光标悬置在域名上,查看并复制域名对应的WAF CNAME地址。
  5. 登录云解析DNS控制台配置DNS解析,为自定义域名添加一条CNAME记录,指向WAF提供的CNAME地址,详情请参见修改域名DNS

适用于

  • 对象存储OSS

FAQ

关于此文档暂时还没有FAQ
返回
顶部