您现在的位置是:娱乐 >>正文

cdn隐藏真实ip

娱乐9643人已围观

简介把源站IP暴露在公网,等于把家门钥匙插在锁上还贴了张纸条写“欢迎光临”。CDN最基础的作用就是挡在源站前面,让访客只能看到边缘节点的IP,源站的真实地址被藏在后面。听起来简单,但很多人配完CDN之后, ...

把源站IP暴露在公网,等于把家门钥匙插在锁上还贴了张纸条写“欢迎光临”。CDN最基础的作用就是挡在源站前面,让访客只能看到边缘节点的IP,源站的真实地址被藏在后面。听起来简单,但很多人配完CDN之后,源站IP照样被扫出来,问题出在细节上。

先搞清楚CDN隐藏IP的原理。域名解析的时候,DNS返回的是CDN厂商分配的CNAME记录,访客请求打到最近的边缘节点。边缘节点缓存了静态资源就直接返回,没有缓存才回源站拉取。回源这个过程,源站看到的请求来自CDN节点,不是真实用户。所以只要回源链路是干净的,外界拿不到源站IP。

但现实里翻车的情况太多了。我见过一个案例,某小型电商网站用了某云CDN,结果源站IP在三天内被人扫到并打了DDoS。原因很简单:网站有个测试子域名 test.example.com 没有接入CDN,直接A记录指向源站。攻击者用子域名枚举工具跑一遍,几分钟就找到了。

哪些操作会让CDN白配

邮件服务是最常见的漏洞。源站跑着Postfix或者Exchange,发出去的邮件头里带着 Received: from [真实IP]。随便给网站上的邮箱发一封信,看邮件源码就能拿到源站IP。解决办法是把邮件服务托管出去,或者至少让邮件走独立的出口IP。

SSL证书也会出卖你。如果源站直接签了Let's Encrypt证书,用Censys或者Shodan搜证书指纹,就能关联到真实IP。更安全的做法是源站只信任CDN回源,用CDN厂商签的内部证书,或者干脆在源站防火墙里只放行CDN节点IP段。

DNS历史记录是个金矿。很多人一开始直接把域名A记录指向源站,后来才接入CDN。SecurityTrails、ViewDNS这些平台存着历史DNS数据,翻一翻就能看到接入CDN之前的真实IP。换CDN厂商的时候也一样,旧CNAME记录如果没清理,也可能留下线索。

回源配置里的坑

有些CDN默认回源走HTTP,源站如果同时监听80和443,攻击者扫到CDN节点回源的IP段,再配合Host头碰撞,有可能直接命中源站。更稳妥的方式是回源走HTTPS,并且在源站Nginx里配置只接受特定Host和特定来源IP的请求。

另外,源站如果开了SSH、MySQL、Redis这些端口对公网开放,就算HTTP层藏得再好,端口扫描一样能发现。我自己的习惯是源站只开80和443,而且这两个端口只对CDN厂商公布的IP段开放,其他一律DROP。SSH走跳板机或者VPN,数据库只监听127.0.0.1。

验证隐藏效果

配完之后别急着上线。用 dig 查一下域名解析,确认返回的是CNAME而不是A记录。再找几个在线工具,比如 ipinfo.io 或者 viewdns.info 的IP历史查询,看看能不能翻出源站。最后从外部网络用 nmap 扫一下已知的源站IP段,确认没有意外暴露的端口。

CDN隐藏IP不是一劳永逸的事。新上线的子域名、新配置的邮件服务、换CDN厂商时的DNS切换,每个环节都可能漏出真实IP。定期做一次外部资产测绘,比事后被打穿再补救要划算得多。

Tags:

相关文章

  • 信息泄露案例分析

    娱乐

    2017年11月,一个普通的星期二下午,Uber的工程师收到一封来自漏洞赏金平台的邮件。发件人声称在Uber的GitHub仓库里发现了一段硬编码的AWS密钥——这本来只是个低级错误,但接下来的48小时 ...

    【娱乐】

    阅读更多
  • 微软补丁网站

    娱乐

    ```html 微软补丁网站 body { font-family: 'Segoe UI', 'Microsoft YaHei', sans-serif; line-height: 1.7; ...

    【娱乐】

    阅读更多
  • webshell入侵

    娱乐

    去年冬天,我帮一个做外贸的朋友查服务器。他那台机器跑着WordPress,带宽不大,平时也就几十个访客。某天早上他发现网站首页被替换成了一张黑底红字的图,上面用俄语写着“你的安全措施就是个笑话”。我连 ...

    【娱乐】

    阅读更多


友情链接