互联网业务的繁荣让各类门户网站、短视频、剧集观看、在线教育等内容生态快速发展,互联网流量呈现爆发式增长,自然也面临着海量内容分发效率上的挑战。
当前,全球互联网流量一半以上通过CDN进行接入,CDN帮助用户更快速、更安全地消费互联网内容,不管是浏览门户网站、观看短视频和长剧, 还是网上购物、在线学习,背后都有 CDN在后台加速的身影。尤其在2020年春夏新冠肺炎疫情期间,CDN支撑了上亿个学生的在线课堂学习,成功应对了在线课堂流量相较之前几十倍的增长,使得各级学校实现了停课不停学的目标,实现了巨大的社会价值。
CDN的全称是Content Delivery Network,即内容分发网络,互联网内容的分发模式与传统商品货物的分发模式有许多共通之处:
-
首先,交通工具的便利及道路基建能力的提升,运输效率提升,让货物运输速度更快。
-
其次,仓储物流能力的建设,货物在多地仓库分布式仓储,位于同地区的多个超市便利店可选择从本地仓库直接进货,而顾客也可以直接在家门口的超市便利店购买所需商品,无需用户和源头生产厂商直接完成订单交易。
-
最后,售卖点的数量、覆盖范围的扩张也都为购买过程带来了体验上的改善,每个小区门口甚至单元楼都已经覆盖了便民超市,如今最近距离商品交易只需从身边的自动贩卖机就能够完成。
更通俗地进行理解:CDN在网络上的作用就像现实中用户身边的自动贩卖机、家门口的超市、各地的集中仓储,让用户可以最近距离很快捷的获取所需商品。
从技术视角出发,CDN通过多级代理服务器对源站内容(例如 js/css/html/mp4 等)进行缓存,让静态内容缓存在距离用户更近的IDC机房节点上,实现用户获取资源的网络距离大幅度缩减,进而提升终端用户体验和传输效率。
如果要实现对全球业务的分发加速,自然需要海量节点储备用于给终端用户提供服务,而作为一个全球化的分布式系统,CDN对系统性能和稳定性有非常高的要求。CDN主要由调度系统、链路质量系统、缓存系统、支撑系统等子系统组成,这些子系统共同构成了CDN大脑神经网络来保证 CDN 的日常服务。
调度系统:支持策略中心、DNS、HTTPDNS和302调度模式。当终端用户发起访问请求时,用户的访问请求会先进行域名DNS解析,调度系统将根据用户解析请求中携带的IP地址判断其区域、运营商,为用户选择并返回最佳接入节点IP(DNS未携带客户端IP时,调度根据DNS IP决策)。
链路质量系统:实时监测缓存系统中所有节点和链路的实时负载以及健康状况。调度系统在决策最优节点时,也会综合链路质量、实时负载等因素来为用户分配服务节点。
缓存系统:用户通过收到的最佳接入节点 IP 访问对应的缓存节点,如果节点已经缓存了用户请求的资源,会直接将资源返回给用户。
支撑系统:支撑服务系统包括天眼、数据智能和配置管理系统,分别具备了资源监测、数据分析和配置管理能力。
源站IP泄露
成因:CDN未正确配置,暴露源服务器真实IP。
风险:攻击者绕过CDN直接攻击源站(DDoS、漏洞利用)。
缓存投毒(Cache Poisoning)
攻击链:
-
篡改请求头(如X-Forwarded-Host)诱导CDN缓存恶意内容。
-
用户访问正常URL加载被污染的页面(如植入挖矿脚本)。
案例:某新闻网站首页被注入赌博广告,持续2小时影响百万用户。
敏感数据缓存
场景:
-
动态API响应被缓存(如/api/user/123返回用户隐私数据)。
-
攻击者遍历路径批量获取数据。
防御:设置Cache-Control: no-store禁用敏感路径缓存。
DDoS反射放大
利用协议:DNS、NTP、Memcached。
数据:1Gbps攻击流量 -> 经CDN节点放大至100Gbps。
防御:CDN配置流量清洗策略,过滤异常协议请求。
域名劫持与HTTPS滥用
手法:攻击者绑定合法域名到恶意CDN,实施中间人攻击。
检测:监控证书变更(如证书指纹突变)。
访问控制失效
漏洞表现:
-
未限制回源IP,允许任意IP直连源站。
-
未启用防盗链,资源被恶意站点盗用。
某社交平台事件(2022年)
攻击路径:
-
利用CDN缓存规则漏洞,缓存/api/v1/users接口响应
-
遍历用户ID盗取500万条隐私数据
修复措施:
-
动态API添加Cache-Control: no-store
-
启用请求签名(HMAC)
原文始发于微信公众号(小白学安全):网安60秒丨CDN
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论