index.jsp в Jetty не может перенаправить, когда dirAllowed = false - PullRequest
2 голосов
/ 08 июня 2011

Мне было поручено исправить уязвимость в списках каталогов в веб-проекте Java, работающем на Jetty. Я сделал это, добавив следующее в XML-файл конфигурации внешнего интерфейса проекта в качестве дочернего элемента тега :

<Call name="addHandler">
  <Arg>
    <New class="org.mortbay.http.handler.ResourceHandler">
      <Set name="dirAllowed">false</Set>
    </New>
  </Arg>
</Call>

Это сработало, но имело странный побочный эффект, заключающийся в частичном отключении перенаправления с базового URL проекта, т. Е. При вводе www..com следует перенаправить на www..com / setupPublicSolicitationSearch.do, но вместо этого он просто выводит содержимое index.jsp в браузер; ввод www..com / random_junk по-прежнему правильно перенаправляет на страницу .do. Ниже приведено содержимое index.jsp:

<% @ taglib uri = "http://struts.apache.org/tags-logic" prefix =" logic "%>

SysAdmin подтвердил, что Apache правильно перенаправляет запрос в Jetty, и именно приведенные выше изменения XML вызвали проблему; удаление этого бита XML позволяет проекту перенаправить снова, как и ожидалось.

...