黑客是如何绕过 CDN 找到你的服务器 IP 的?如何彻底隐藏真实 IP 地址?

很多小伙伴喜欢用服务器搭建个人博客,用来写写文章,分享技术,平时访问的流量也不多,并且域名也套用了 CDN,为什么还是被攻击了呢?这就要从 CDN 的实现原理说起了…

  • CDN 介绍

CDN 全称是内容分发网络(Content Delivery Network),它的作用是加速用户访问网站的速度。CDN 在全球不同地区放置了很多缓存服务器,这些服务器被称为“节点”,每个节点都存放了部分或全部的网页内容,比如图片、视频、CSS文件等,如果用户请求的内容节点中没有,它就会去网站的源服务器获取,之后再把这些内容返回给用户,从而避免了用户直接访问源服务器。整个过程看似完美无缺,但是其中却隐藏了一个卧底。

  • 谁是卧底?

我们直接使用浏览器访问服务器的 IP 地址,这样就绕过了 CDN,默认情况下会使用 http 协议访问,也就是访问服务器的 80 端口,正常情况下服务器会返回 Nginx 的默认页面,这时我们把 http 改为 https 再次访问,这时会显示证书不安全,我们查看证书信息,发现共用名正是我们的域名,问题就出在这里。

本不应该返回证书的地址却出现了我们的证书信息,而罪魁祸首竟然是 Nginx。当客户端请求了一个没有配置的主机名(IP 地址),Nginx 会把配置文件中的第一个网站的配置返回给客户端,因为是通过 https 发送的请求,所以会连同证书信息一起返回,这可以说是 Nginx 的一个漏洞。

当我们把互联网上所有的 IP 地址都使用 https 请求遍历一遍,和返回的域名信息对号入座,自然就能够找到域名对应的 IP 地址,你可能会说互联网上那么多的 IP 地址,一个个遍历得到什么时候?但是已经有一些坑爹的网站在这么做了…

  • 坑爹的网站

这些网站会实时扫描互联网上的 IP 地址,几乎每隔一天就可以把互联网上的 IP 地址扫描一遍,美其名曰“网络空间测绘“。我们打开 FOFA 这个网站,输入我们的域名进行搜索,可以看到这里详细的记录了服务器的 IP 地址,甚至包含了服务器开放的端口号。所以,黑客压根不需要自己去遍历 IP,在这个网站搜一下就出来了,类似的还有 censys。

  • 消灭卧底

既然已经了解了 IP 泄漏的原理,要想解决这个问题其实也很简单,我们只需要稍微修改一下 Nginx 的配置,当访问默认站点时,返回一个虚假的证书就可以了。

(默认配置路径:/etc/nginx/sites-available/default )

server{listen80default_server;listen[::]:80default_server;# SSL configurationlisten443ssl default_server;listen[::]:443ssl default_server;# 其他 https 端口listen8443ssl default_server;listen[::]:8443ssl default_server;# 配置一个虚假的证书ssl_certificate /root/cert/default.crt;ssl_certificate_key /root/cert/default.key;ssl_session_timeout1d;ssl_session_cacheshared:SSL:10m;ssl_session_ticketsoff;root/var/www/html;# Add index.php to the list if you are using PHPindexindex.html index.htm index.nginx-debian.html;server_name_;location/ {# First attempt to serve request as file, then# as directory, then fall back to displaying a 404.try_files$uri$uri/ =404;}}

添加所有 https 访问的端口,然后配置一个虚假的证书,证书可以使用下面的命令生成。

openssl req-x509-nodes-newkey ec:<(openssl ecparam-name prime256v1)-keyout/root/cert/default.key -out /root/cert/default.crt-subj”/CN=bing.com”-days3650

原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/3219.html

Like (0)
Previous 2026年7月22日
Next 2026年7月22日

相关推荐

  • 常见http状态码大全

    一些常见的状态码包括: 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 详细解析如下: 1xx(临时响应类…

    2026年7月11日
    0
  • IP地址到底是什么?

    IP这个词很多人耳熟能详,可要具体说清楚IP地址究竟是什么,不少人却说不明白。今天就带大家系统梳理一下IP的相关知识点。 一、IP地址究竟是什么 IP地址,全称Internet P…

    2026年7月23日
    0
  • 异地备份是什么?守护企业数据安全的最后防线

    在恶意攻击日益频繁的当下,数据备份已成为保障数据安全的关键环节。然而,除了恶意病毒外,人为失误或自然灾害导致的数据中心损毁,也可能使服务器中存储的重要数据突然消失。丢失重要数据更可…

    2026年4月2日
    0
  • 云原生是什么?到底解决什么问题?

    云计算普及的同时,”云原生”这个新的应用分类也随之出现。这个词越来越频繁地出现在开发者对话和技术文章中,却因为过度使用成了一个时髦词汇,反而让真正有价值的技…

    2026年4月11日
    0
  • WordPress报413请求实体过大错误

    413 请求实体过大错误,是一种 HTTP 响应,意思是你发送的内容比服务器能接受的要大。HTTP 400 系列错误一般是客户端的问题,但 413 错误更多是因为上传的内容本身合法…

    2026年3月28日
    0
  • SQL DDL 是什么? 五个指令一次学会:CREATE、ALTER、TRUNCATE、DROP、RENAME

    SQL 有四大分类: DDL(数据定义语言)负责处理表格的「结构」。 DML(数据操作语言)负责处理表格的「资料」。 DCL(数据控制语言)负责处理「权限」。 TCL(事务控制语言…

    2026年5月13日
    0
  • 如何更新服务器CentOS版本?

    老版本系统一旦被官方”抛弃”,就再也收不到安全补丁了,如果继续使用这类过期系统,不法分子很容易利用系统漏洞发起攻击,轻则破坏服务器正常运行,重则窃取内部核心…

    2026年5月12日
    0
  • 保护性DNS是什么?

    保护性 DNS (PDNS) 是利用现有 DNS 协议和架构来分析 DNS 查询并采取措施减轻威胁的安全服务。保护性DNS 从源头上阻止对恶意软件、勒索软件、网络钓鱼攻击、病毒、恶…

    2026年5月25日
    0
  • 常见的虚拟主机是什么?

    虚拟主机(Virtual Host)属于一类在单台物理主机或者主机集群之上,达成多域名并行服务的技术方案,能够同时承载多个站点或业务。各虚拟主机实例彼此完全隔离,并且支持用户自主运…

    2026年6月17日
    0
  • 什么是会话固定攻击(Session Fixation)?

    你知道吗?登录网站时,网站是怎么记住你身份的?答案就是会话(Session)。 可以把 Session 想象成住酒店拿到的房卡。拿着这张卡,酒店就知道你是哪个房间的客人,能进出房间…

    2026年5月18日
    0