• cdn绕过


    什么是cdn

    CDN工作原理


    内容分发网络(Content Delivery Network,简称CDN)是建立并覆盖在承载网之上,由分布在不同区域的边缘节点服务器群组成的分布式网络。


    CDN应用广泛,支持多种行业、多种场景内容加速,例如:图片小文件、大文件下载、视音频点播、直播流媒体、全站加速、安全加速。


    借用阿里云官网的例子,来简单介绍CDN的工作原理。

    假设通过CDN加速的域名为www.a.com,接入CDN网络,开始使用加速服务后,当终端用户(北京)发起HTTP请求时,处理流程如下:

    1. 当终端用户(北京)向www.a.com下的指定资源发起请求时,首先向LDNS(本地DNS)发起域名解析请求。
    2. LDNS检查缓存中是否有www.a.com的IP地址记录。如果有,则直接返回给终端用户;如果没有,则向授权DNS查询。
    3. 当授权DNS解析www.a.com时,返回域名CNAME www.a.tbcdn.com对应IP地址。
    4. 域名解析请求发送至阿里云DNS调度系统,并为请求分配最佳节点IP地址。
    5. LDNS获取DNS返回的解析IP地址。
    6. 用户获取解析IP地址。
    7. 用户向获取的IP地址发起对该资源的访问请求。
    • 如果该IP地址对应的节点已缓存该资源,则会将数据直接返回给用户,例如,图中步骤7和8,请求结束。
    • 如果该IP地址对应的节点未缓存该资源,则节点向源站发起对该资源的请求。获取资源后,结合用户自定义配置的缓存策略,将资源缓存至节点,例如,图中的北京节点,并返回给用户,请求结束。

      

    (1)CDN的加速资源是跟域名绑定的。
    (2)通过域名访问资源,首先是通过DNS分查找离用户最近的CDN节点(边缘服务器)的IP
    (3)通过IP访问实际资源时,如果CDN上并没有缓存资源,则会到源站请求资源,并缓存到CDN节点上,这样,用户下一次访问时,该CDN节点就会有对应资源的缓存了

    0x01 验证是否存在CDN

    方法1:

    很简单,使用各种多地 ping 的服务,查看对应 IP 地址是否唯一,如果不唯一多半是使用了CDN, 多地 Ping 网站有:
    http://ping.chinaz.com/
    http://ping.aizhan.com/
    http://ce.cloud.360.cn/

    方法2:

    使用 nslookup 进行检测,原理同上,如果返回域名解析对应多个 IP 地址多半是使用了 CDN。

    0x02 绕过 CDN 查找网站真实 IP

    方法1:查询历史DNS记录

    1)查看 IP 与 域名绑定的历史记录,可能会存在使用 CDN 前的记录,相关查询网站有:
    https://dnsdb.io/zh-cn/ ###DNS查询
    https://x.threatbook.cn/ ###微步在线
    http://toolbar.netcraft.com/site_report?url= ###在线域名信息查询
    http://viewdns.info/ ###DNS、IP等查询
    https://tools.ipip.net/cdn.php ###CDN查询IP

    2)利用SecurityTrails平台,攻击者就可以精准的找到真实原始IP。

    方法2:查询子域名

    毕竟 CDN 还是不便宜的,所以很多站长可能只会对主站或者流量大的子站点做了 CDN,而很多小站子站点又跟主站在同一台服务器或者同一个C段内,此时就可以通过查询子域名对应的 IP 来辅助查找网站的真实IP。

    下面介绍些常用的子域名查找的方法和工具:

    1)微步在线(https://x.threatbook.cn/)

    2)Dnsdb查询法。(https://dnsdb.io/zh-cn/)

    3)Google 搜索 Google site:baidu.com -www就能查看除www外的子域名

    4) 子域名扫描器 layer子域名挖掘机

    方法3:利用网络空间引擎

    钟馗之眼,shodanfofa

    搜索网站的信息

    方法4:使用国外主机解析域名

    国内很多 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的主机直接访问可能就能获取到真实IP

    方法5:使用zmap

    文章:https://levyhsu.com/2017/05/05/%e5%88%a9%e7%94%a8zgrab%e7%bb%95cdn%e6%89%be%e7%9c%9f%e5%ae%9eip/

    方法6:查找https证书

     https://censys.io/

  • 相关阅读:
    linux基础命令一
    Mac安装vue cli或者electron时 npm i 报错
    记MacOS抹盘后--使用U盘安装MacOS实录
    腾讯云申请SSL证书与Nginx配置Https
    Windows Server 2016 安装虚拟机版黑群晖
    FreeNas搭建踩坑指南(三)
    FreeNas搭建踩坑指南(二)
    FreeNas搭建踩坑指南(一)
    Apache2配置多域名站点及支持https
    ubuntu server 16.04 开启root密码登录
  • 原文地址:https://www.cnblogs.com/yiyegugu/p/wwwzhihucomquestion37353035.html
Copyright © 2020-2023  润新知