Непроверенные перенаправления и пересылки

Большинство веб-приложений в Интернете часто перенаправляют пользователей на другие страницы или другие внешние веб-сайты. Однако, не проверяя достоверность этих страниц, хакеры могут перенаправлять жертв на фишинговые или вредоносные сайты или использовать переадресацию для доступа к неавторизованным страницам.

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

пример

Вот некоторые классические примеры непроверенных перенаправлений и переадресации:

  • Допустим, у приложения есть страница - redirect.jsp, которая принимает параметр redirectrul . Хакер добавляет вредоносный URL-адрес, который перенаправляет пользователей, выполняющих фишинг / установку вредоносных программ.

http://www.mywebapp.com/redirect.jsp?redirectrul=hacker.com
  • Все веб-приложения используются для перенаправления пользователей в разные части сайта. Чтобы добиться того же, на некоторых страницах используется параметр, указывающий, куда следует перенаправить пользователя в случае успешной операции. Злоумышленник создает URL-адрес, который проходит проверку контроля доступа приложения, а затем перенаправляет злоумышленника в административные функции, к которым у злоумышленника нет доступа.

http://www.mywebapp.com/checkstatus.jsp?fwd=appadmin.jsp

Профилактические механизмы

  • Лучше избегать использования редиректов и переадресации.

  • Если это неизбежно, то это следует делать без использования пользовательских параметров при перенаправлении пункта назначения.