Каков наилучший способ скрыть / скрыть версию Tomcat со страниц ошибок? - PullRequest
9 голосов
/ 15 февраля 2010

Может кто-нибудь, пожалуйста, дайте мне знать, какой из следующих двух подходов рекомендуется и почему:

  • Внесите необходимые изменения в ServerInfo.properties

  • Определение "страницы ошибок" в web.xml

Ответы [ 3 ]

13 голосов
/ 03 февраля 2016

Ответы немного устарели, поэтому: если вы используете Tomcat 6 или новее (я тестировал на Tomcat 7), вы можете использовать ErrorReportValve, чтобы добиться того же, что намного проще в настройке иподдерживать.Просто добавьте следующие строки в раздел Host вашего server.xml (где у вас уже должен быть AccessLogValve:

<Valve className="org.apache.catalina.valves.ErrorReportValve"
    showReport="false" 
    showServerInfo="false"/>    

Таким образом, вы скрываете информацию о сервере и (из-за необязательного showReport = false) также трассировка стека.

Подробнее об этом можно прочитать в Security How To и в документации к Valve Report Valve .

4 голосов
/ 15 февраля 2010

Изменение ServerInfo.properties является наиболее безопасным. Например, если вы развернули веб-приложение на http://example.com/contextname, все равно можно получить 404 на http://example.com/blah или около того. Можно также получить это программно с помощью робота для отправки запроса неподдерживаемым методом (который возвращает 503 страница ошибки).

Тем не менее, я, честно говоря, не вижу веских причин скрывать от него версию Tomcat. Эта информация фактически не добавляет значения для «обычных пользователей». Это также не мешает любому хакеру попробовать все, чтобы сломать его или использовать дыры в безопасности (если они были ...). Они не беспокоятся о том, отображается версия или нет. Для «обычных пользователей» я бы по-прежнему использовал пользовательскую страницу с ошибкой, которая немного более интегрирована в стилистику рассматриваемого веб-приложения, так что она менее «страшна» и, таким образом, улучшает взаимодействие с пользователем.

4 голосов
/ 15 февраля 2010

Я бы внес изменения в ServerInfo.properties независимо от того, могут быть другие места для получения информации о версии ServerInfo.properties, кроме только страниц с ошибками. (Может быть, кто-то оставляет домашнюю страницу по умолчанию, образцы и т. Д., И они могут иметь это.)

Задайте страницы ошибок в своем веб-приложении, если хотите - более быстрый вариант может заключаться в глобальном изменении страниц ошибок по умолчанию, указав их в CATALINA_HOME / conf / web.xml - при этом будут использоваться новые указанные страницы ошибок по умолчанию, даже если разработчик забывает указать страницы ошибок для своего приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...