作为一种安全措施,我想隐藏我用我的服务器上的技术堆栈。什么是有效的方法来做到这一点?我想过隐藏后端技术堆栈
1)使用mod_rewrite或重写模块隐藏任何页面的扩展名如.PHP或.ASPX
2)关闭所有的错误报告
1b)中使用mod_rewrite担任目的的误导性的扩展,像掩饰一个PHP页面的aspx
2B)抛出误导性的错误去与1B),使我的PHP页面显示ASP样的错误。
作为一种安全措施,我想隐藏我用我的服务器上的技术堆栈。什么是有效的方法来做到这一点?我想过隐藏后端技术堆栈
1)使用mod_rewrite或重写模块隐藏任何页面的扩展名如.PHP或.ASPX
2)关闭所有的错误报告
1b)中使用mod_rewrite担任目的的误导性的扩展,像掩饰一个PHP页面的aspx
2B)抛出误导性的错误去与1B),使我的PHP页面显示ASP样的错误。
您可以将伪造的Server:
和/或X-Powered-By
标头添加到响应中,假装它是由不同的服务器生成的。 (或者,Server: My Unhackable Server
)
这是一个不可能完成的任务。您将不得不修改整个堆栈,在这种情况下,您将创建新的有问题的版本,您现在必须与供应商的版本保持同步。
没有办法做到这一点,没有让你的网站减少安全。
你可以做跛脚的东西移去X供电-通过,或者如果它使用类似ASP或PHP具有已知的一个改变会话生成方案。事实是,它不会阻止任何人谁实际上想要知道你正在运行的。
对于基本的例子(它去多深度超过此),某些Web服务器会接受任何头,所以我可以说GET LOLOLOL HTTP/1.1
,它仍然可以工作。有些堆栈会保持会话活跃,有些则不会。您还可以看到有哪些功能堆栈上,因为有刚在网络上这么多,有没有办法在地球上的任何栈支持完全相同的一组。
它不一定非常完美。我只是希望它不会在代码中引入太多问题,就可以达到最佳效果。 – Bimmy 2010-09-14 03:12:10
,我认为你的努力会使用你必须创建摆在首位更安全的应用程序的工具可能会更好一些。 – 2010-09-14 02:53:13