Java 隐藏Red5 tomcat版本-减少请求的信息泄漏 问题:
我想在red5中隐藏我的tomcat版本的身份。 到目前为止,我已经做了以下工作:Java 隐藏Red5 tomcat版本-减少请求的信息泄漏 问题:,java,tomcat,red5,Java,Tomcat,Red5,我想在red5中隐藏我的tomcat版本的身份。 到目前为止,我已经做了以下工作: </bean> <bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve"> v<property name="showServerInfo" value="false" />
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
webapps
文件夹中除vod
和root\web-inf
之外的所有非必需目录。其他目录/webapps不是必需的conf/j2ee container.xml
中添加了一个错误阀
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
然而,我还没有找到如何做剩下的三件事:
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
隐藏响应头概述版本(Server:apachecoyote/1.1
)
禁用目录浏览
藏起来
2和3对我来说应该比较简单。。。。但不确定1
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
当前的tomcat是ApacheTomcat/7.0.57
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
关于保密性的免责声明
这并不意味着我支持仅仅依靠默默无闻的安全。相反,我相信隐藏版本会给攻击增加一点延迟,迫使攻击者执行更多信息收集。减少信息泄漏被认为是OWASP的最佳实践。您可以禁用Tomcats“/conf/web.xml”中的几个设置,例如将这些设置设置为false:
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>
xpoweredBy、listings、showServerInfo、…默默无闻的安全性从未奏效,也永远不会奏效。你这样做几乎一无所获。类似的问题已经提交给Tomcat,Mark Thomas关闭了它们,因为它们不会修复。实际上隐藏识别功能是一种众所周知的方法,因为许多常见的攻击者首先识别在潜在受害者上运行的软件,然后查找站点上的漏洞,如漏洞数据库。显然,保持系统补丁和更新是第一位的。您的答案不是答案,更适合作为评论。@maythesource.com认为攻击者不会发现它是最愚蠢的方法。你所做的就是推迟可能的攻击。阅读Tomcat错误报告。我不同意。。。使攻击者更难识别系统(使他花费一点额外的时间)并不是一个缺点。现在,它值得额外的努力吗?如果现有工具可以根据行为(指纹)检测版本,则可能不会。然而,如果你把它说得一文不值,那你就错了。默默无闻的安全不是一颗银弹。。。它应该是多个其他最佳安全实践(补丁、更新、防火墙、最佳实践等)之上的一个小小的威慑。发表意见并不能回答“你所做的只是推迟可能的攻击”的问题。确切地说。。。攻击者还需要克服一个障碍。此外,您还使得没有经验的脚本kddies无法使用。现在,如果你的论点是,更有经验的攻击者会感兴趣。。。如果你的版本补丁速度不够快,或者存在一个零日漏洞,并且有一个足够好的黑客拥有它,那么你的程序就完蛋了。所以我们可以整天都这么做,但这毫无意义,因为我不同意你的观点。显然,设计的安全性是至关重要的,但隐蔽性作为纵深防御措施是有用的。
</bean>
<bean id="valve.error" class="org.apache.catalina.valves.ErrorReportValve">
v<property name="showServerInfo" value="false" />
<property name="showReport" value="false" />
</bean>
</list>