Как настроить Spring MVC для предотвращения «уязвимости на основе путей» - PullRequest
0 голосов
/ 22 сентября 2018

У меня есть приложение Spring MVC (5.0.8.RELEASE), и недавнее сканирование безопасности показывает, что оно имеет «Уязвимость на основе пути».Вот контроллер:

@RequestMapping(value = "/faq", method = RequestMethod.GET)
public String faq(HttpServletRequest request) {
    return "faq";
}

Для вышеприведенного контроллера, вот действительный URL для моей страницы часто задаваемых вопросов:

http://example.com/faq

Однако, исходя из безопасностиСканирование и то, что я тестировал, следующий URL тоже работает:

http://example.com/faq.anything

Как я могу настроить Spring MVC, чтобы сделать http://example.com/faq единственным действительным URL?(предположим, что я не использую @PathVariable)

1 Ответ

0 голосов
/ 22 сентября 2018

Поскольку суффикс поддержки пружины ". *" По умолчанию./ person также сопоставляется с /person.* /person.xml или /person.pdf или /person.any также сопоставляется.- Чтобы полностью отключить использование расширений файлов, необходимо установить оба из них:

.useSuffixPatternMatching (false)

.favorPathExtension (false)

https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html#mvc-ann-requestmapping-suffix-pattern-match

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