我在很多地方看到人们说以下类型的标头是一个漏洞:
Server:Microsoft-IIS/7.5
X-AspNet-Version:4.0.30319
X-Powered-By:ASP.NET
我可以看到这为攻击者提供了额外的信息,以便他可以验证这些平台上的已知错误,然后滥用它们。但在我看来,删除这些标题只能保护您免受非常简单的脚本小子的攻击,任何严重的攻击都会很容易地发现这些信息。例如
- 与其他服务器相比,当向其发送复杂的随机垃圾时,IIS 必须有一种不同的响应或不同的失败方式
- ASP.NET中的已知漏洞列表可以一一尝试,看看有没有apply + 同点同样适用于ASP.NET本身
- 其他一些类似的操作
所以总而言之,任何严重的对手似乎真的能够相当简单地发现这些信息。
毕竟,除了非常简单的脚本小子保护之外,删除标头会给您带来任何好处,脚本小子将首先针对具有漏洞的站点,例如流行的引用:
“你不必跑得比熊还快就可以逃跑。你只需要比你旁边的人跑得快。”
PS 如果此信息泄露可能导致真正的漏洞,您可能会遇到更严重的问题。
PPS 无论如何都有这个标题是没有意义的,因为它甚至会提高性能(虽然可以忽略不计),所以摆脱它们是个好主意,但我仍然对这里的整个“安全”论点感到好奇