您的位置: 新闻资讯 > 行业动态 > 正文

《套 CDN:能否被攻破的深度解析》(图文)


来源:mozhe 2024-12-10

一、什么是 CDN



CDN 即内容分发网络,是一种提供更快互联网访问的服务。它通过在网络的边缘或核心交换区域部署内容代理服务器来实现。1996 年,MIT 提出了 CDN 概念,全球第一家 CDN 网络运营商 ——Akamai 公司于 1999 年开始提供商业服务。
CDN 通常由内容路由系统、内容管理系统、Cache 节点网络三部分组成。内容路由系统通过负载均衡系统将用户的请求定向到适当的设备上,实现调度功能,为用户选择合适的网络节点以供后续访问。内容管理系统承担着内容管理的职责,包括内容的注入和发布、分发、审核以及服务等,实现互联网内容集中化分析、展现和决策。Cache 节点网络用于支持 CDN 的业务,是专为面向最终用户的内容提供而设计的设备,它缓存源站的数据,让浏览器的请求不用到达源站服务器,直接在半路就可获取响应。
CDN 的工作原理是减少用户与源站之间的物理距离。它是一个全球分布的服务器网络,这些服务器存储的内容比源站更靠近用户。当用户访问网站时,CDN 会根据用户的地理位置和网络状况,自动选择最近的服务器节点来提供内容,从而实现快速的内容传输和分发。
CDN 的关键技术主要有内容存储和分发技术。它依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。

二、套 CDN 的方法



套 CDN 可以通过以下步骤实现:
一、购买特定的 CDN 产品
选择一个可靠的 CDN 服务提供商至关重要。在选择时,要考虑性能和稳定性、覆盖范围、安全性以及价格和服务等因素。例如速盾作为专业的 CDN 服务提供商,具备良好性能和高稳定性,节点覆盖范围广,提供强大的安全防护功能如 DDoS 攻击防护、Web 应用防火墙等,同时能根据预算提供合适的服务以及优质的客户支持和售后服务。
二、进行域名解析、绑定等操作
  1. 注册账号:在 CDN 服务提供商的官方网站上注册账号,并按照提示完成注册流程。
  1. 添加域名:将服务器域名添加到 CDN 服务中。若服务器有多个域名,可以一次性添加所有域名。
  1. 配置参数:根据需求配置 CDN 的参数,如缓存时间、压缩设置、安全设置等,这些参数设置将直接影响 CDN 的性能和效果。
  1. 验证域名:CDN 服务提供商通常会要求验证域名的所有权,以确保是合法的域名所有者,按照提示完成域名验证流程。
以华为云为例,首先来到对象存储,点击域名管理,绑定新的用户域名,这样就可以把储存 “桶” 的域名改成自定义的域名,复制 CNAME。接着来到域名服务商,添加解析,CNAME,填入复制的 CNAME 地址,等待解析生效。尝试用设置的域名访问对象储存中的文件,可以访问,代表配置解析成功。然后来到网站后台(wordpress)安装华为云 OBS 插件,对应自己用的插件即可,各大厂商的插件都可以搜索到。对象存储 obs 填写好对应的信息,点击开始同步,就大功告成啦!就可以看到所有的图片链接地址都是设置的 CDN 的域名啦!会员也是去储存桶里回源啦!命中率还是非常高的。
又比如在圣凡云购买 CDN 产品后,首先访问圣凡云的官网,进入后台(已买完 CDN 的情况)点击虚拟主机。访问 CDN 的控制面板,点击绑定域名。绑定之前需要先把域名解析至圈出来的地址。接着去域名管理添加一下解析,点击保存以后去 CDN 的控制面板添加绑定的域名,域名就填写需要套取 CDN 的域名,ip 填写服务器的 IP 即可。点击确定以后去 ping 一下自己的域名,可以看到 ping 了多个 ip 同时并隐藏了原始 ip。在解析的时候千万不要直接解析到服务器的 ip,某些人会通过查看历史解析 ip 找到原 ip 从而直接 ddos 原 ip,这样 cdn 就没有作用了。
对于阿里云服务器,购买后解析域名会经过以下三步,绑定域名,域名新增成功后,后台将自动为您开启 CDN 全球加速,待 5~10 分钟后,CDN 开启成功,再进行域名解析即可。具体为:在网站后台首页,单击网站管理 > 域名管理进入域名管理页面。单击新增域名,输入您的域名即可。绑定域名后,系统将自动为您开启 CDN,若 CDN 自动开启失败,需根据提示及解决方案指南进行操作。一键解析:新增域名成功后,请等待系统自动生成解析记录值(时间约 2~3 分钟),如状态未更新需手动刷新页面。单击一键解析 > 授权并一键解析。如一键解析未成功,或在其他服务商平台购买的域名,无法使用一键解析,请手动解析。需等待 2~3 分钟生成解析记录值,复制该域名的解析记录值后,登录购买该域名的服务商平台,添加解析记录。共需添加两条解析记录,填写提示如下,成功保存后即可。记录一:主机记录:www。记录类型:CNAME。解析线路:默认。记录值:粘贴在网站后台复制的解析记录值。TTL:10 分钟。记录二:主机记录:如您使用的域名是腾讯、百度、华为云、阿里云,主机记录输入 @,如域名是新网、三五互联,主机记录输入一个空格。记录类型:CNAME。解析线路:默认。记录值:粘贴在网站后台复制的解析记录值。TTL:10 分钟。

三、套 CDN 的安全性探讨


套 CDN 在带来性能提速和网络防护等好处的同时,也存在着一定的安全隐患。
性能提速方面的风险
第三方 CDN 在缓存网站数据以减轻源站服务器压力时,只能缓存明文数据,不能缓存密文数据。因为若缓存密文数据,就可能引发重放攻击。例如在转账场景中,黑客可以利用收集的密文数据替换正常的转账数据,欺骗系统。以 TLS/SSL 现行的加密机制,不允许重放攻击发生,所以第三方 CDN 无法缓存密文数据。如果要求 CDN 缓存密文数据,就会面临 CDN 发动中间人攻击的风险。
网络防护方面的风险
CDN 可能具有检测恶意流量的功能,但部分攻击需要解密后才能检测,如部分应用层的 DoS 攻击。如果要求 CDN 防御这类攻击,必然会将一定量的信息暴露给 CDN,虽然暴露信息越多检测会越彻底,但同时 CDN 发生攻击的风险也越大。不过从实际情况来看,这种隐患不太可能发生,因为 CDN 服务商本质上是中介,获取用户和网站的信任是其存在的基石,不会主动发动攻击。
此外,CDN 还面临着其他安全威胁。比如 Radware 指出的针对 CDN 的五大安全威胁:
  • 盲点 1:动态内容攻击:攻击者利用动态内容请求会发送到源服务器的特点,生成攻击流量,可能导致源服务器无法处理所有请求,出现拒绝服务的情况,且速率限制可能会拦截合法用户。
  • 盲点 2:基于 SSL 的攻击:CDN 服务器必须利用客户的 SSL 密钥解密流量才能检测并缓解 DDoS SSL 攻击,但若客户不愿意提供密钥,攻击流量就会重定向至源服务器,使客户容易受到 SSL 攻击侵扰,还可能出现延迟和审计问题。
  • 盲点 3:针对非 CDN 服务的攻击:CDN 通常只提供给 HTTP/S 和 DNS 应用,攻击者可利用这一盲点对非 CDN 服务的应用发起攻击,堵塞客户互联网管道,使源服务器中的所有应用对合法用户不可用。
  • 盲点 4:直接 IP 攻击:攻击者对客户源 Web 服务器 IP 地址直接攻击,可能是 UDP 洪水或 ICMP 洪水等网络洪水,直接击中客户源服务器,堵塞互联网管道,关闭源服务器中的所有应用和在线服务。
  • 盲点 5:Web 应用攻击:多数基于 CDN 的 Web 应用防火墙功能有限,无法防御零日攻击和已知威胁,且实现较高防护水准成本较高。同时,多数 CDN 安全服务不够敏感,可能需要数小时手动部署安全配置。
CDN 网络安全风险还包括 DDoS 攻击、缓存污染、数据泄露和软件漏洞等。DDoS 攻击会通过大量恶意网络请求耗尽目标网站服务器资源,导致网站无法正常访问。缓存污染则是攻击者向 CDN 网络的缓存中注入恶意内容或修改原始内容,导致用户被重定向到恶意网站或被展示虚假内容,造成隐私泄露等安全问题。由于 CDN 网络中的节点分散在全球各地,涉及不同国家的数据传输,增加了数据泄露的风险。而 CDN 网络中使用的各种软件存在潜在安全漏洞,攻击者可以利用这些漏洞入侵节点或获取敏感信息。
针对这些安全风险,可以采取全面风险评估、DDoS 防护、强化缓存安全、加强数据保护和及时更新修补漏洞等应对策略。全面风险评估能确定潜在威胁和漏洞,为制定应对策略提供依据。DDoS 防护可采用多层次的 DDoS 防火墙、入侵检测系统和流量分析等技术。强化缓存安全可通过加密缓存内容、限制缓存内容的可见性以及部署恶意内容的检测和过滤机制。加强数据保护可采用加密通信、访问控制和身份验证等技术。及时更新和修补漏洞则需要建立漏洞管理和修复机制,定期对节点进行安全审计和渗透测试。

四、如何判断网站是否使用 CDN



判断网站是否使用 CDN 可以通过以下几种方法:

(一)多地 ping


CDN 的工作原理是将网站内容分发到多个地理位置不同的服务器节点上,以实现用户就近获取内容,提高访问速度。如果多地 ping 同一网站,出现多个解析 IP 地址,那么说明使用了 CDN 进行内容分发。可以使用一些在线工具,如 http://ping.chinaz.com/http://ping.aizhan.com/http://ce.cloud.360.cn/ 等进行多地 ping 测试。

(二)nslookup 法


使用 nslookup 查看域名解析对应的 IP 地址,如果解析到多个 IP 地址则说明使用了 CDN。nslookup(全称 name server lookup),是一个在命令行界面下的网络工具,在 Windows 中无需下载即可使用,它有两种模式:交互和非交互。非交互模式下,输入 “nslookup + 查询的域名或者 IP 地址,回车”,可以查看域名对应的 IP 地址;交互模式下,在命令行界面输入 “nslookup”,回车,即可进行多次查询。如果查询结果返回多个 IP 地址,说明该网站可能使用了 CDN。

(三)使用 CDN 查询工具进行查看


可以使用一些专门的 CDN 查询工具来判断网站是否使用了 CDN,如 http://www.cdnplanet.com/tools/cdnfinder/https://www.ipip.net/ip.html

五、CDN 的绕过方法


简述:列举多种绕过 CDN 的技战法,如利用不同的域名配置、邮件服务、子域名请求等获取真实 IP。

(一)利用不同的域名配置绕过 CDN

  1. 访问不同的域名形式:有时候网站管理员在配置 CDN 时,可能只对特定形式的域名进行了加速,例如只对带 “www” 的域名进行加速,而对不带 “www” 的域名未进行加速。所以可以尝试通过访问不同形式的域名来绕过 CDN,如访问不带 “www” 的域名或者其他可能未被加速的域名形式。
  1. 利用子域名差异:在配置 CDN 的过程中,可能存在只对主站域名进行加速,而对子域名未加速的情况。可以通过查询子域名,找到可能未被 CDN 覆盖的子域名,从而获取真实 IP。比如很多企业为了节省成本,只对主站或流量大的子站做 CDN,而一些小站子站跟主站在同一个服务器或者同 C 段,此时可以通过子域对应的 IP 查询,帮助找到真实 IP 站点。常用的子域名查询工具有微步在线、Dnsdb、Google 站点等。

(二)利用邮件服务绕过 CDN


一般的邮件系统都在内部,没有经过 CDN 的解析。通过利用目标网站的邮箱注册、找回密码或者 RSS 订阅等功能,查看邮件、寻找邮件头中的邮件服务器域名 IP,ping 这个邮件服务器的域名,就可以获得目标的真实 IP。常见的邮件触发点有 RSS 订阅、邮箱注册激活处、邮箱找回密码处、产品更新的邮件推送、某业务执行后发送的邮件通知、员工邮箱及邮件管理平台等入口处的忘记密码等。需要注意的是,必须是目标自己的邮件服务器,第三方或公共邮件服务器是没有用的。

(三)利用子域名请求绕过 CDN


很多时候,主站的访问量会比较大,所以主站都是挂 CDN 的,但是分站可能没有挂 CDN。可以通过 ping 二级域名获取分站 IP,可能会出现分站和主站不是同一个 IP 但在同一个 C 段下面的情况,从而能判断出目标的真实 IP 段。

(四)利用国外地址绕过 CDN


很多时候国内的 CDN 对国外的覆盖面并不是很广,故此可以利用此特点进行探测。通过国外代理访问就能查看真实 IP 了,或者通过国外的 DNS 解析,可能就能得到真实的 IP。例如可以使用国际 Ping 测试站点如 ipip、ASM 等,或者利用世界各地的 DNS 服务器地址进行国外 DNS 解析。

(五)利用网络空间搜索引擎绕过 CDN


可以使用一些网络空间搜索引擎如 fofa、鹰图、Zoomeye、shodan、360 等,通过输入特定的关键字、标题、body 特征或者网站的 icon 文件的哈希值等,找出收录的有这些关键字的 IP 域名,很多时候能获取网站的真实 IP。

(六)查询 DNS 历史记录绕过 CDN


查看 IP 与域名绑定的历史记录,使用 CDN 之前可能有记录。相关查询网站有 Dnsdb、微步在线、Netcraft、IPIP 等。

(七)利用网站漏洞绕过 CDN


通过网站的信息泄露如 phpinfo 泄露、github 信息泄露、命令执行等漏洞获取真实 IP。一些测试文件如 phpinfo、test 等或者利用 SSRF 漏洞让服务器主动向外发起连接,找到真实 IP 地址。

(八)利用第三方接口查询绕过 CDN


可以使用一些第三方接口查询网站如 https://get-site-ip.com/https://fofa.info/extensions/source 等,不一定能完全准确地获取真实 IP,但可以作为一种参考方法。

(九)利用 Zmap 扫全网绕过 CDN


先从 IP 段去扫描符合开放端口,再从 IP 去访问看看关键字,将符合结果进行保存。但这种方法需要大量的时间和精力,且结果需要人工判定其准确性。

六、套 CDN 后的安全防护措施


套 CDN 后可采取多种安全防护策略,以确保网站的安全稳定运行。

使用高防 CDN


高防 CDN 是一种有效的安全防护手段。例如,选择像速盾这样专业的高防 CDN 服务提供商,其具备强大的防护能力,能够有效地抵御各种类型的网络攻击。在选择高防 CDN 服务提供商时,要考虑防护能力、节点分布、服务质量和价格等因素。注册账号后,将域名添加到平台上,并根据需求配置参数,如缓存策略、安全防护级别、访问控制等。最后将域名解析到高防 CDN 服务提供商提供的 IP 地址上。使用高防 CDN 后,还需要定期监控流量、优化防护策略、定期测试,以确保其防护效果。

加强服务器自身安全防护

  1. 加强密码策略:确保所有用户账户都具有足够强的密码,长度为 12 到 32 个字符,由大小写字母、数字和特殊字符组成,并且定期更改密码,使用两步验证来增强帐户的安全性。
  1. 安装防火墙和安全软件:安装和配置防火墙来限制入站和出站的网络流量,使用入侵检测系统(IDS)和入侵防御系统(IPS)监控异常行为,配置安全插件以防止恶意软件的传播。
  1. 加密:使用 HTTPS 和 SSL 对用户数据进行加密,对存储的数据进行加密,以防止敏感数据泄露。
  1. 定期安全审计:对系统进行定期安全审计,找出潜在的安全漏洞和风险,并在服务器上安装补丁,以修补已知的漏洞。
  1. 限制文件上传:限制用户上传文件至服务器的功能和权限,对上传的文件进行严格的安全检查和过滤,以阻止恶意文件上传。

墨者安全 防护盾

墨者安全作为专业级别安全防护专家,在应对 Webshell 风险隐患方面展现出了卓越的能力。其拥有全面的检测机制,能够精准识别 Webshell 的各种类型和变体,无论是复杂的大马,还是隐蔽的内存马,都难逃其敏锐的监测。
墨者安全防护盾具备强大的实时监控功能,对服务器的各项活动进行 7*24 小时不间断的监视。一旦发现任何可疑的 Webshell 活动迹象,立即发出警报,并迅速采取隔离和清除措施,将风险扼杀在萌芽状态。
在防护策略上,墨者安全防护盾采用了多层次的防御体系。不仅能够在网络层面阻挡外部的恶意访问和攻击,还能深入系统内部,对服务器的文件系统、进程等进行深度检查和保护,确保 Webshell 无法植入和运行。
同时,墨者安全防护盾拥有快速的应急响应能力。当 Webshell 攻击事件发生时,专业的安全团队能够迅速介入,进行深入的分析和处理,最大程度减少攻击带来的损失,并帮助用户快速恢复服务器的正常运行。
墨者安全防护盾还注重用户教育和培训,为用户提供关于 Webshell 防范的专业知识和最佳实践,帮助用户提升自身的安全意识和防范能力,共同构建坚实的网络安全防线。

热门文章

X

7x24 小时

免费技术支持

15625276999


-->