Введение

Техника предоставления веб-странице доступности по нескольким URL-адресам. Перенаправление URL-адресов в Википедии. Перенаправление URL-адресов, также известное как переадресация URL, — это техника Всемирной паутины, позволяющая сделать веб-страницу доступной по нескольким URL-адресам. Когда веб-браузер пытается открыть URL-адрес, который был перенаправлен, открывается страница с другим URL-адресом. Аналогично, перенаправление домена или переадресация домена происходит, когда все страницы в доменном имени URL перенаправляются на другой домен, например, когда wikipedia.com и wikipedia.net автоматически перенаправляются на wikipedia.org. Перенаправление URL-адресов выполняется по разным причинам:

для сокращения URL-адресов;
для предотвращения неработающих ссылок при перемещении веб-страниц;
чтобы разрешить нескольким доменным именам, принадлежащим одному владельцу, указывать на один веб-сайт;
для управления навигацией внутри и за пределами веб-сайта;
для защиты конфиденциальности (например, перенаправление ссылок YouTube и Twitter на Invidious и Nitter соответственно или преобразование ссылок AMP в обычные ссылки);
и для злонамеренных целей, таких как фишинговые атаки или распространение вредоносного ПО.

Принудительное использование HTTPS

Веб-сайт может быть доступен как по защищенному протоколу HTTPS, так и по незащищенному HTTP (небезопасный адрес, начинающийся с "http://"). Если пользователь вводит адрес или переходит по ссылке на небезопасную версию, браузер автоматически перенаправит его на защищенную версию, если веб-сайт включен в список предварительной загрузки HSTS, поставляемый с приложением, или если пользователь уже посещал этот сайт ранее. В противном случае к сайту будет осуществлен доступ по HTTP. Владелец веб-сайта может решить обрабатывать такие запросы, перенаправляя браузер на HTTPS-версию и, желательно, также активируя HSTS для последующих обращений.

Сходные доменные имена

Пользователь может опечататься при вводе URL-адреса. Организации часто регистрируют эти неправильно написанные домены и перенаправляют их на целевой сайт. Этот прием часто используется для "резервирования" других доменов верхнего уровня (TLD) с тем же названием или для удобства пользователей, которые по ошибке вводят ".com" вместо ".edu" или ".net".

Регистрация исходящих ссылок

Журналы доступа большинства веб-серверов содержат подробную информацию об источнике посещений и о том, как посетители просматривали размещенный сайт. Однако они не фиксируют, по каким ссылкам посетители уходили со страницы. Это происходит потому, что браузеру посетителя не требуется связываться с исходным сервером при переходе по исходящей ссылке. Эту информацию можно отслеживать несколькими способами. Один из них – перенаправление URL. Вместо прямой отправки посетителя на другой сайт, ссылки на сайте могут вести на URL-адрес в домене исходного веб-сайта, который автоматически перенаправляет на целевой ресурс. Недостатком этого метода является задержка, вызванная дополнительным запросом к серверу исходного веб-сайта. Поскольку этот дополнительный запрос оставляет след в журнале сервера, раскрывая, по какой именно ссылке был совершен переход, это также может представлять угрозу конфиденциальности. Например, URL "https://wikipedia. com" (с "*. com" в качестве домена) сначала перенаправляется на https://www.wikipedia.org/ (с доменным именем в org), где можно перейти на сайт, соответствующий выбранному языку. Это неизбежно, если различные ссылки в цепочке обслуживаются разными серверами, однако следует стремиться к минимизации этого явления, максимально переписывая URL на сервере перед отправкой его в браузер в качестве перенаправления.

Перенаправление циклов

Иногда ошибка может привести к тому, что страница будет перенаправляться обратно на себя, возможно, через другие страницы, что вызовет бесконечную цепочку перенаправлений. Браузеры должны прекращать перенаправление после определенного количества переходов и отображать сообщение об ошибке. В стандарте HTTP/1.1 указано: открытые перенаправления имеют собственный идентификатор CWE, CWE 601. Перенаправление URL также предоставляет механизм для осуществления атак, связанных с утечкой данных между сайтами. Измеряя время, необходимое веб-сайту для возврата определенной страницы, или различая целевые страницы, злоумышленник может получить значительную информацию о состоянии другого веб-сайта. В 2021 году Knittel и др. обнаружили уязвимость в реализации Performance API в Chrome, которая позволила им надежно обнаруживать перенаправления между разными доменами.