Defaults.Exposed

Defaults.Exposed › 报告

你的服务器标头向攻击者透露了什么:技术栈泄露报告(2026)

发布于 2026-06-29

数据截至 2026-06-29 · 方法论 v7。 来自观测到的 HTTP 响应头(ServerX-Powered-By)的汇总普查数据。参见我们如何评分

大多数网站会主动暴露自己运行的环境:71.4% 的站点在响应头中标明了它们的 Web 服务器,而 8.1% 更进一步,泄露了它们的应用栈——往往还带有确切的版本号。 这些都不是必需的,而每一条信息都是免费送给攻击者的提示,帮他们决定攻击哪个目标。版本泄露是最糟糕的:一个宣告已到生命周期终点软件的响应头就是一份邀请函。

网站对外宣告了什么

Server 响应头标明了 Web 服务器软件。截至 2026-06-29,在发送该响应头的 71.4% 站点中,最常见的取值为:

Server 响应头在发送该头的站点中所占比例
cloudflare21.7%
nginx16.0%
apache14.9%
openresty9.2%
squarespace4.9%

仅服务器名称本身风险较低。真正的暴露在于 X-Powered-By,有 8.1% 的站点发送它——而且它常常包含精确的版本号。最常见的取值包括 asp.net 以及诸如 php/7.4.33 这样的特定 PHP 构建版本。

为什么版本泄露很重要

在互联网上扫描某个已知漏洞的攻击者,正是按这些响应头进行筛选。一个宣告 php/7.4.33 的站点——即一个已到生命周期终点、不再获得安全补丁的 PHP 版本——在还未经过任何一次探测之前,就已经告诉每一个扫描器它可能是可被利用的。泄露本身并不制造漏洞,但它消除了攻击者的侦察成本,并把一个未打补丁的站点推到了列表的最前面。

修复是免费的,对访问者也没有任何坏处:抑制这些响应头,或将其通用化。 没有任何功能上的理由要把你的技术栈版本公开广播出去。

如何停止泄露你的技术栈

  1. 彻底移除 X-Powered-By——它对访问者毫无用处。(在 PHP/你的框架中加一条指令,或在代理处剥离该头即可。)
  2. Server 通用化——在你的 Web 服务器或 CDN 上去掉版本号,或去掉整个响应头。
  3. 无论如何都要保持技术栈打补丁——隐藏版本只是争取时间,并不能替代更新。
  4. 重新检查,确认这些响应头已经消失。

常见问题

什么是 X-Powered-By 响应头? 一个用于宣告应用框架、且常常宣告其确切版本(例如某个特定的 PHP 构建)的响应头。它是可选的,对访问者没有任何好处——只对攻击者有用。8.1% 的站点会发送它。

暴露我的服务器软件算是一个漏洞吗? 单凭它本身不算,但这是信息泄露:它让攻击者能够针对你特定的技术栈和版本筛选已知漏洞,把他们的侦察成本降到零。最佳实践是将其抑制。

我应该隐藏 Server 响应头吗? 将其通用化(去掉版本号)是一种好做法。更大的收益在于移除 X-Powered-By 并保持软件打补丁。

这会损害 SEO 或访问者体验吗? 不会。这些响应头对用户不可见,对搜索引擎也无关紧要。移除它们只有好处。

检查你的响应头都暴露了什么

精确查看你的站点对外宣告了什么——以及该剥离什么——免费且私密。

检查你的域名 → · HTTP 安全响应头成绩单 → · 仅汇总数据。数据存储和处理均在欧盟境内。