我想知道,目前这样做是否是一个良好且一致的方法:
- 在响应头中隐藏 nginx 版本信息,但
- 在 Discourse 的 HTML 源代码中显示确切的版本号和 Git 补丁级别
如果 HTML 源代码在 meta generator 标签中显示版本号,那么如果有人使用自动化工具搜索未修复的安全漏洞,这将非常容易。
我建议至少从匿名请求中移除该信息,甚至从所有非管理员访问中移除。
我想知道,目前这样做是否是一个良好且一致的方法:
如果 HTML 源代码在 meta generator 标签中显示版本号,那么如果有人使用自动化工具搜索未修复的安全漏洞,这将非常容易。
我建议至少从匿名请求中移除该信息,甚至从所有非管理员访问中移除。
我认为这是“通过隐蔽实现安全”,这根本算不上真正的安全。最好将精力集中在能够真正提升安全性的技术上。
当然,重点应是建立一个安全的系统,而不是隐藏漏洞。
我只是好奇,为什么 nginx 的版本会被隐藏,而主应用程序的版本却没有。
但这也可能涉及到 IMAP 和 SMTP 协议的问题:是否应该显示这些协议的版本,还是将其隐藏或更改。
这可能是因为 nginx 位于 Docker 容器内部?