防劫持防篡改

更新时间:2025-05-22 10:44:26

防劫持防篡改是CDNetworks为客户解决HTTP劫持和篡改问题而开发的功能,有效避免劫持和篡改,保证请求文件的正确性。该功能特别适用于大文件的传输,或者需要保障数据传输安全、同时又未使用全链路https方案的应用场景。

随着互联网网络环境的复杂化,劫持和篡改已经成为CP(Content Provider)头痛的问题之一。

  • 对于视频业务而言,用户观看视频时会出现视频跳帧、花屏、画面内容不匹配甚至无法打开
  • 对于下载业务而言,用户下载完成后会无法安装

什么是HTTP劫持?

  • HTTP劫持指的是恶意中间人(MITM,Man-In-The-Middle)通过拦截和改变用户请求和响应的行为。此类攻击可能导致用户被重定向到错误或未更新的文件,又或者是恶意的网站。

什么是HTTP篡改?

  • HTTP篡改指的是未授权的修改数据包内容的行为。数据被篡改可能导致传输的文件不准确,甚至包含恶意代码,让用户访问到部分字节被篡改的文件。

如何实现防劫持防篡改

CDNetworks提供3种方案,客户可基于不同业务场景和客户需求来选择合适的方案。

功能 描述 适用场景
响应头标识校验 通过响应头中的标识数据判断文件响应是否来源正确节点 对防劫持要求高,但对防内容篡改要求不高
Hash校验(基于源站的Hash值) 通过源站提供的hash值判断文件是否完整 对文件数据安全性要求高,且源站可以提供hash值
Hash校验(基于CDN算法) 通过CDN节点的hash值以及专门的监控系统判断文件是否完整 对文件数据安全性要求高,但源站无法提供hash值,同时对准确度要求不那么苛刻

响应头标识校验Response Header Token Validation


  1. 服务器端(源站或CDN)在响应文件时,在响应头中携带标识,客户端(CDN或是终端用户)通过判断响应头中标识数据是否符合约定规则来判断该文件响应是否来源于正确的节点。
  2. 若校验不通过,则客户端可根据配置好的逻辑发起https请求或者使用CDNetworks私有协议再次请求。

Hash校验(基于源站的Hash值)/Hash Validation based on Origin’s Hash Value


  1. 服务器端(源站或CDN)在响应文件时,对响应的文件内容,基于和约定好的算法进行Hash值计算,然后将Hash值放置于响应头中发送给客户端(CDN或是终端用户)。
  2. CDN在缓存完文件后,按照约定的算法再次进行hash值计算,并与服务器端响应头中的Hash值匹配,若一致则证明文件内容没有被篡改;若不一致则证明文件内容有误,CDN客户端删除缓存,并可以通过https再次发起请求。

Hash校验(基于CDN算法)/Hash Validation based on CDN algorithms


  1. 源站响应文件时,不提供标识或hash值,只响应文件
  2. CDN在缓存完文件后,基于CDNetworks的算法进行Hash计算,然后上报Hash值给CDNetworks的监控系统
  3. CDNetworks的监控系统有所有CDN节点的hash值,当它收到新节点的hash值时,它会结合已有hash值评估该节点的文件一致性
  4. 若校验文件不一致,监控系统会触发告警并推送掉该节点上的文件,该节点会重新请求文件。
  5. 若校验一致,监控系统会响应结果给该CDN节点,CDN会直接响应文件给用户。

如何设置防劫持防篡改

该功能涉及到HTTP头等多个配置项,不同场景配置方式不同,配置相对复杂,且部分需要源站的配合,因此请先联系CDNetworks技术支持,我们的技术支持会在与您确认好需求和方案后,为您安排配置。

注意事项

  • 响应头标识校验Response Header Token Validation和Hash校验(基于源站的Hash值)/Hash Validation based on Origin’s Hash Value需要客户源站或客户端进行配合
  • 若客户源站无法做相应配合,可考虑Hash校验(基于CDN算法)或者使用CDNetworks对象存储服务。
本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!