18 Янв, 2023

Открытая уязвимость перенаправления

Vulnerability Assessment as a Service (VAaaS)

Tests systems and applications for vulnerabilities to address weaknesses.

Аббревиатура уязвимости открытого перенаправления - “Перенаправление URL” или уязвимость “Открытого перенаправления”.

Уязвимость с открытым перенаправлением - это тип уязвимости в системе безопасности, возникающий, когда приложение или веб-сайт перенаправляет пользователя на произвольный внешний URL-адрес. Это может произойти, когда приложение или веб-сайт использует предоставленные пользователем данные в процессе перенаправления, такие как параметр URL, без надлежащей проверки или очистки входных данных. Это может позволить злоумышленнику создать вредоносную ссылку, которая перенаправляет жертву на вредоносный веб-сайт или фишинговую страницу, что может привести к краже конфиденциальной информации или распространению вредоносного ПО. Она также известна как уязвимость “непроверенные перенаправления и переадресации”.

Примером уязвимости открытого перенаправления может быть страница входа в систему, которая перенаправляет пользователя на URL-адрес, указанный в параметре “return” после успешного входа в систему. Если приложение неправильно проверяет параметр “return”, злоумышленник может создать ссылку с вредоносным URL-адресом в параметре “return”, обманом перенаправляя пользователя на вредоносный веб-сайт после входа в систему.

Уязвимости с открытым перенаправлением можно устранить, должным образом проверив и очистив предоставленные пользователем данные в процессе перенаправления, а также разрешив перенаправление только на надежные и одобренные URL-адреса.

Пример уязвимого кода на разных языках программирования:

В PHP:

				
					$redirect_url = $_GET['redirect_url'];

header("Location: ".$redirect_url);
				
			

 

В этом примере PHP-скрипт принимает параметр “redirect_url” из запроса GET и использует его для установки заголовка местоположения. Если приложение неправильно проверяет параметр “redirect_url”, злоумышленник может создать ссылку с вредоносным URL-адресом в параметре “redirect_url”, обманом перенаправляя пользователя на вредоносный веб-сайт.

В ASP.NET

				
					string redirectUrl = Request.QueryString["redirectUrl"];

Response.Redirect(redirectUrl);
				
			

В этом примере ASP.NET скрипт принимает параметр “redirectUrl” из строки запроса и использует его для перенаправления пользователя. Если приложение неправильно проверяет параметр “redirectUrl”, злоумышленник может создать ссылку с вредоносным URL-адресом в параметре “redirectUrl”, обманом перенаправляя пользователя на вредоносный веб-сайт.

В Java

				
					String redirectUrl = request.getParameter("redirectUrl");

response.sendRedirect(redirectUrl);
				
			

Этот Java-код принимает параметр “redirectUrl” из запроса и использует его для перенаправления пользователя. Если приложение неправильно проверяет параметр “redirectUrl”, злоумышленник может создать ссылку с вредоносным URL-адресом в параметре “redirectUrl”, обманом перенаправляя пользователя на вредоносный веб-сайт.

Важно отметить, что эти примеры являются лишь демонстрацией уязвимости open redirect и не должны использоваться в рабочей среде, поскольку они уязвимы для атаки.

Примеры использования открытой уязвимости перенаправления.

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

				
					http://example.com/login?redirect=http://example.com/home
				
			

Проблема заключается в том, что злоумышленник потенциально может перенаправить пользователей на вредоносный веб-сайт, манипулируя параметром “перенаправление”. Они могут отправить жертве следующую ссылку:

				
					http://example.com/login?redirect=http://attacker.com
				
			

Когда жертва нажимает на ссылку, она будет перенаправлена на веб-сайт злоумышленника вместо законной домашней страницы. Это может быть использовано для фишинга конфиденциальной информации или для доставки вредоносных программ.

Важно отметить, что это всего лишь один пример уязвимости open redirect, и существуют другие векторы. Также важно проверить URL-адрес перенаправления и не доверять никаким вводимым данным от пользователя или любого другого внешнего источника.

Методы повышения привилегий.

Существует много методов, которые можно использовать для повышения привилегий, но конкретный метод будет зависеть от уязвимости и затронутой системы. Вот несколько примеров методов повышения привилегий, которые потенциально могут быть использованы:

  1. Использование уязвимости программного обеспечения: злоумышленник может использовать уязвимость программного обеспечения, такую как переполнение буфера, чтобы получить повышенные привилегии в уязвимой системе.

  2. Злоупотребление неправильно настроенными разрешениями: злоумышленник может воспользоваться неправильно настроенными разрешениями в системе, чтобы получить доступ к ресурсам, к которым у него обычно нет доступа.

  3. Передача хэша: злоумышленник может использовать атаку с передачей хэша для аутентификации в системе, используя хэш действительного пароля пользователя, а не сам пароль.

  4. Использование службы: злоумышленник может использовать уязвимость в службе или демоне, запущенном в системе, чтобы получить повышенные привилегии.

  5. Использование эксплойта с повышением привилегий: злоумышленник может использовать эксплойт с повышением привилегий, специфичный для операционной системы или программного обеспечения, запущенного в системе.

  6. Использование уязвимости ядра: злоумышленник может использовать уязвимость в ядре операционной системы, чтобы получить повышенные привилегии.

Важно отметить, что не все методы применимы ко всем системам, и это зависит от сценария. Кроме того, важно всегда поддерживать системы в актуальном состоянии и иметь надлежащую политику контроля доступа.

Общая методология и контрольный список для тестирования уязвимостей открытого перенаправления

Методология:

  1. Определите все потенциальные места перенаправления в приложении, такие как страницы входа, страницы выхода, страницы 404 и любые другие страницы, которые могут перенаправить пользователя в другое место.

  2. Проверьте каждое место перенаправления на наличие уязвимости, введя различные полезные нагрузки, такие как “http://attacker.com“, “javascript: оповещение (1)”, “данные: текст / html; base64”, “файл:///etc/passwd” и т.д., в параметр перенаправления.

  3. Изучите реакцию приложения на каждую полезную нагрузку, чтобы определить, является ли местоположение перенаправления уязвимым.

  4. Если обнаружена уязвимость, попытайтесь использовать ее, перенаправив пользователя на вредоносный веб-сайт или внедрив вредоносный код в приложение.

  5. Документируйте все выводы и предоставьте рекомендации по исправлению положения.

Контрольный список:

  • Определите все потенциальные места перенаправления в приложении

  • Проверьте каждое место перенаправления на наличие уязвимости, вводя различные полезные нагрузки

  • Изучите реакцию приложения на каждую полезную нагрузку

  • Попытка воспользоваться уязвимостью

  • Документируйте все выводы и предоставьте рекомендации по исправлению положения

Важно отметить, что это общая методология и контрольный список, и они могут быть скорректированы и улучшены в зависимости от конкретного сценария. Кроме того, важно всегда проводить тщательное тестирование и не полагаться только на автоматизированные инструменты. Также важно соблюдать законы и правила страны, в которой вы проводите тестирование.

Набор инструментов для использования уязвимостей с открытым перенаправлением

Существует несколько программных средств, которые можно использовать для тестирования уязвимостей с открытым перенаправлением и для автоматизации процесса выявления и использования этих уязвимостей.

Вот несколько примеров:

1. Burp Suite
2. OWASP ЗАП
3. NMap
4. Wfuzz
5. sqlmap
6. Vega
7. Acunetix
8. Arachni
9. Nikto
10. OpenVAS
11. Nessus
12. Fiddler
13. Telerik Fiddler
14. Charles
15. Paros
16. WebScarab
17. Skipfish
18. Wireshark
19. Metasploit
20. OWASP DirBuster
21. OWASP W3AF
22. OWASP Wapiti
23. OWASP Arachni
24. OWASP JoomScan
25. OWASP Skipfish
26. OWASP XSSer (OWASP XSSer)
27. OWASP A2SV
28. OWASP ZED Attack Proxy
29. OWASP AppSensor
30. OWASP IronWASP
31. OWASP WebGoat
32. OWASP WebSlayer
33. OWASP WebScarabNG
34. OWASP WebSecurityTestingFramework
35. OWASP WebSecurify
36. OWASP WebCruiser
37. OWASP Clickjacking Тестер
38. OWASP XSS Me
39. OWASP XSS Filter Evasion Cheat Sheet

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

Важно отметить, что ручное тестирование - это не инструмент как таковой, а методология или процесс, который включает в себя использование различных методов и методологий для выявления уязвимостей. Такие инструменты, как Burp Suite, OWASP ZAP, WebScarab и др., могут помочь и облегчить процесс ручного тестирования, предоставляя прокси-сервер, прокси-сервер для перехвата и сканер веб-приложений, который можно использовать для проверки уязвимостей открытого перенаправления.

Ручное тестирование, включая:

  1. Определите все потенциальные места перенаправления в приложении

  2. Проверьте каждое место перенаправления на наличие уязвимости, вводя различные полезные нагрузки

  3. Изучите реакцию приложения на каждую полезную нагрузку

  4. Попытка использовать уязвимость, если она обнаружена

  5. Документируйте все выводы и предоставьте рекомендации по исправлению положения

Важно отметить, что этот список не является исчерпывающим, и есть много других доступных инструментов, также некоторые из этих инструментов могут иметь другие функциональные возможности, помимо открытого тестирования перенаправления, и их можно использовать как часть комплексного процесса тестирования безопасности. Кроме того, важно помнить, что автоматические инструменты не заменяют ручное тестирование, и вы всегда должны проводить тщательное ручное тестирование. Важно отметить, что использование этих инструментов само по себе не гарантирует безопасность вашего приложения, и их следует использовать как часть комплексного процесса тестирования безопасности.

Средняя оценка CVSS уязвимости открытого перенаправления

Общая система оценки уязвимостей (CVSS) - это метод оценки серьезности уязвимостей в системе безопасности. Оценки выставляются по шкале от 0 до 10, причем 10 баллов являются самыми серьезными.

Уязвимости с открытым перенаправлением обычно считаются уязвимостями низкой или средней степени серьезности. Оценка CVSS для уязвимости с открытым перенаправлением обычно находится в диапазоне 2,6-4,3, но она может меняться в зависимости от конкретного сценария.

Причина низкой или средней серьезности заключается в том, что сама уязвимость напрямую не приводит к нарушению безопасности, но она может быть использована как часть более масштабного сценария атаки. Например, злоумышленник может использовать уязвимость open redirect, чтобы заманить ничего не подозревающих пользователей на фишинговую страницу или сайт распространения вредоносного ПО.

Оценка CVSS является относительной мерой серьезности уязвимости, и ее следует использовать в сочетании с другими факторами, такими как влияние на бизнес, вероятность использования и доступность решения, для определения общего риска уязвимости.

Общее перечисление слабых мест (CWE)

Основным CWE, связанным с уязвимостями открытого перенаправления, является CWE-601: “Перенаправление URL на ненадежный сайт (”Открытое перенаправление")", который описывает сценарий, в котором приложение перенаправляет пользователя на внешний веб-сайт без надлежащей проверки целевого URL.

Однако уязвимости с открытым перенаправлением также могут быть признаком других CWES, таких как:

CWE-601: перенаправление URL–адреса на ненадежный сайт - эта уязвимость возникает, когда приложение перенаправляет пользователя на внешний веб-сайт, но приложение неправильно проверяет целевой URL-адрес. Это позволяет злоумышленникам перенаправлять пользователей на произвольные сайты, которые могут быть использованы для фишинга конфиденциальной информации, кражи учетных данных для входа или распространения вредоносного ПО.

CWE-918: Подделка запросов на стороне сервера (SSRF) – Эта слабость возникает, когда приложение делает запрос к серверной системе или службе, но приложение не проверяет запрос должным образом. Это позволяет злоумышленникам отправлять вредоносные запросы в серверную систему или службу, которые могут быть использованы для доступа к конфиденциальной информации, кражи учетных данных для входа или распространения вредоносного ПО. Уязвимости с открытым перенаправлением могут быть симптомом SSRF, поскольку злоумышленник может использовать уязвимость с открытым перенаправлением для перенаправления пользователя на вредоносный URL-адрес, который затем может быть использован для запуска уязвимости SSRF.

CWE-922: неправильное ограничение внешних объектов XML (XXE) – эта слабость возникает, когда приложение обрабатывает данные XML, но приложение не ограничивает должным образом использование внешних объектов. Это позволяет злоумышленникам получить доступ к конфиденциальной информации, украсть учетные данные для входа или распространить вредоносное ПО. Уязвимости с открытым перенаправлением могут быть симптомом XXE, поскольку злоумышленник может использовать уязвимость с открытым перенаправлением для перенаправления пользователя на вредоносный XML-файл, который затем может быть использован для запуска уязвимости XXE.

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

CWE-927: неправильная проверка индекса массива – эта слабость возникает, когда приложение использует индекс массива, но приложение неправильно проверяет индекс массива. Это позволяет злоумышленникам получить доступ к конфиденциальной информации, украсть учетные данные для входа или распространить вредоносное ПО. Открытые уязвимости перенаправления могут быть симптомом этого cwe, поскольку злоумышленник может использовать уязвимость открытого перенаправления для перенаправления пользователя на вредоносную страницу с измененным индексом массива, который затем может быть использован для запуска этой уязвимости.

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

CWE-929: неправильный контроль идентификаторов ресурсов – эта слабость возникает, когда приложение неправильно контролирует доступ к ресурсам, таким как файлы или сетевые подключения. Это позволяет злоумышленникам получить доступ к конфиденциальной информации, украсть учетные данные для входа или распространить вредоносное ПО. Открытые уязвимости перенаправления могут быть симптомом этого cwe, поскольку злоумышленник может использовать уязвимость открытого перенаправления для перенаправления пользователя на вредоносную страницу, которая затем может быть использована для запуска этой уязвимости, путем манипулирования URL или параметрами для доступа к несанкционированным ресурсам.

CWE-935: неправильная нейтрализация специальных элементов, используемых в команде (‘Внедрение команды’) – Эта слабость возникает, когда приложение передает управляемый пользователем ввод в команду, но приложение не нейтрализует должным образом специальные элементы, которые могут быть использованы для изменения команды. Это позволяет злоумышленникам выполнять произвольные команды, которые могут быть использованы для доступа к конфиденциальной информации, кражи учетных данных для входа или распространения вредоносного ПО. Открытые уязвимости перенаправления могут быть симптомом этого cwe, поскольку злоумышленник может использовать уязвимость открытого перенаправления для перенаправления пользователя на вредоносную страницу, которая затем может быть использована для запуска этой уязвимости путем введения вредоносных команд в URL или параметры.

CWE-937: неправильная нейтрализация специальных элементов, используемых в команде операционной системы ("Внедрение команды операционной системы’) – Эта слабость возникает, когда приложение передает управляемый пользователем ввод в команду операционной системы, но приложение не нейтрализует должным образом специальные элементы, которые могут быть использованы для изменения команды. Это позволяет злоумышленникам выполнять произвольные команды с привилегиями приложения, которые могут быть использованы для доступа к конфиденциальной информации, кражи учетных данных для входа или распространения вредоносного ПО. Открытые уязвимости перенаправления могут быть симптомом этого cwe, поскольку злоумышленник может использовать уязвимость открытого перенаправления для перенаправления пользователя на вредоносную страницу, которая затем может быть использована для запуска этой уязвимости путем введения вредоносных команд в URL или параметры.

Важно отметить, что уязвимости с открытым перенаправлением также могут быть связаны с другими CWE в зависимости от конкретного сценария, например, если уязвимость вызвана отсутствием проверки ввода или отсутствием надлежащего контроля доступа, идентификаторами CWE будут CWE-20: Неправильная проверка входных данных или CWE-287: неправильная аутентификация соответственно.

CWE-20: Неправильная проверка ввода – эта уязвимость возникает, когда приложение неправильно проверяет вводимые пользователем данные, что позволяет злоумышленникам вводить вредоносные данные. Неправильная проверка входных данных может привести к различным типам уязвимостей, включая уязвимости с открытым перенаправлением. Если приложение не проверяет целевой URL-адрес в функции перенаправления, злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на вредоносный сайт.

CWE-287: неправильная аутентификация – эта уязвимость возникает, когда приложение не выполняет надлежащую аутентификацию пользователей, что позволяет злоумышленникам получать несанкционированный доступ к ресурсам. Неправильная аутентификация может привести к различным типам уязвимостей, включая уязвимости с открытым перенаправлением. Если приложение не выполняет надлежащую аутентификацию пользователя перед его перенаправлением, злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на вредоносный сайт без надлежащей аутентификации.

Хотя эти CWE могут быть связаны с уязвимостями с открытым перенаправлением, они не могут быть непосредственной причиной уязвимости. Всегда важно тщательно оценить первопричину уязвимости, чтобы определить соответствующий идентификатор CWE.

Список CWE постоянно развивается, и со временем добавляются или изменяются новые записи.

Таким образом, CWE-601 является основным CWE, связанным с уязвимостями с открытым перенаправлением, но уязвимости с открытым перенаправлением также могут быть признаком других CWE, таких как CWE-918, CWE-922, CWE-923, CWE-927, CWE-928, CWE-929, CWE-935, CWE-937 и другие CWES в зависимости от конкретного сценария.

Открытые эксплойты уязвимости перенаправления

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

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

Распространение вредоносного ПО: злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на сайт, распространяющий вредоносное ПО, которое затем может быть использовано для компрометации системы пользователя.

Перехват сеанса: злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на вредоносный сайт, который затем может быть использован для кражи файлов cookie сеанса пользователя, что позволяет злоумышленнику перехватить сеанс пользователя и получить доступ к конфиденциальной информации.

Спам поисковой оптимизации (SEO): злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на сайт, предназначенный для повышения рейтинга другого сайта в поисковых системах.

Clickjacking: злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на сайт, содержащий скрытый iframe, который затем может быть использован для выполнения атак с использованием clickjacking.

Перенаправление на вредоносный веб-сайт: злоумышленник может использовать уязвимость для перенаправления пользователей на вредоносный веб-сайт, который может использоваться для распространения вредоносного ПО или кражи конфиденциальной информации.

Атаки с использованием межсайтового скриптинга (XSS): злоумышленник может использовать уязвимость open redirect для перенаправления пользователя на сайт, содержащий вредоносный скрипт, который затем может быть использован для кражи конфиденциальной информации, такой как учетные данные для входа.

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

Практикуюсь в тестировании на уязвимость открытого перенаправления

Одним из способов проверки на наличие уязвимостей с открытым перенаправлением является использование уязвимой службы или репозитория, которые были специально разработаны таким образом, чтобы быть уязвимыми для атак с открытым перенаправлением.

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

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

DVWA (чертовски уязвимое веб-приложение) - это веб-приложение на PHP / MySQL, которое чертовски уязвимо. Его основная цель - помочь специалистам по безопасности проверить свои навыки и инструменты в правовой среде, помочь веб-разработчикам лучше понять процессы обеспечения безопасности веб-приложений и помочь преподавателям / студентам преподавать / изучать безопасность веб-приложений в классной комнате.

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

Для изучения откройте уязвимость перенаправления

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

OWASP (Open Web Application Security Project) предлагает несколько ресурсов, в том числе проект OWASP Top 10, который предоставляет информацию о 10 наиболее важных рисках безопасности веб-приложений, включая уязвимости с открытым перенаправлением.

Институт SANS предлагает несколько онлайн-курсов по безопасности веб-приложений, в том числе курс SEC542 по тестированию веб-приложений на проникновение и этическому взлому, в котором рассматриваются уязвимости с открытым перенаправлением.

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

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

Практические платформы, такие как HackTheBox, TryHackMe и другие, обеспечивают безопасную среду для практики и проверки ваших навыков в области безопасности веб-приложений, включая уязвимости с открытым перенаправлением.

Книги с обзором уязвимости open redirect

“The Web Application Hacker's Handbook: поиск и использование уязвимостей безопасности” Дафидд Штуттард и Маркус Пинто: Эта книга считается классической в области безопасности веб-приложений. Он охватывает широкий спектр уязвимостей веб-приложений, включая открытое перенаправление, и содержит подробное объяснение того, как находить и использовать эти уязвимости.

“Кулинарная книга по тестированию безопасности веб-приложений” Пако Хоупа и Бена Уолтера: Эта книга представляет собой практическое руководство по тестированию безопасности веб-приложений, содержащее пошаговые инструкции по тестированию на различные типы уязвимостей, включая уязвимости с открытым перенаправлением.

“Кулинарная книга по тестированию веб-безопасности: систематические методы быстрого поиска проблем” Саймона Беннетта: Эта книга представляет собой руководство в стиле кулинарной книги по тестированию веб-безопасности, содержащее пошаговые инструкции по тестированию на различные типы уязвимостей, включая уязвимости с открытым перенаправлением.

“Веб-хакинг 101: как заработать деньги на хакерстве этично” Питер Яворски : Эта книга охватывает широкий спектр уязвимостей веб-приложений, включая уязвимости с открытым перенаправлением, и содержит подробное объяснение того, как находить и использовать эти уязвимости, а также как зарабатывать деньги в качестве исследователя безопасности веб-приложений.

“Освоение современного тестирования на проникновение в Интернет” Буллард, Крис: Эта книга представляет собой всеобъемлющее руководство по современному тестированию на проникновение в Интернет, охватывающее новейшие методы и инструменты для поиска и использования уязвимостей веб-приложений, включая уязвимости с открытым перенаправлением.

“Веб-хакинг: атаки и защита” Штуттарда Дафидда и Пинто Маркуса: В этой книге подробно рассматриваются веб-хакерские атаки и различные типы атак, которые могут использоваться для использования веб-приложений, включая уязвимости с открытым перенаправлением. В нем также описываются инструменты и методы, используемые злоумышленниками, и даются рекомендации по защите от этих атак.

“Взлом открытых веб-приложений” Джоэла Скамбрея, Майка Шемы и Калеба Сима: Эта книга представляет собой всеобъемлющее руководство по безопасности веб-приложений, включая уязвимости с открытым перенаправлением. В нем рассматриваются как методы ручного тестирования, так и автоматизированные инструменты, а также даются практические рекомендации по защите от подобных типов атак.

Список полезных нагрузок, подходящих для уязвимостей с открытым перенаправлением

Существует несколько полезных нагрузок, которые можно использовать для проверки уязвимостей с открытым перенаправлением, в зависимости от конкретной уязвимости и типа выполняемой атаки. Некоторые примеры полезных нагрузок, которые можно использовать для проверки уязвимостей открытого перенаправления, включают:

Базовая полезная нагрузка: базовая полезная нагрузка - это URL-адрес, содержащий вредоносную ссылку, например “http://example.com/redirect.php?url=http://evil.com

Полезная нагрузка в кодировке URL: полезная нагрузка в кодировке URL - это полезная нагрузка, которая использует кодировку URL для кодирования специальных символов, таких как “http://example.com/redirect.php?url=http%3A%2F%2Fevil.com

JavaScript payload: A JavaScript payload is a payload that uses JavaScript to redirect the user, such as “<script>window.location=’http://evil.com‘;</script>”

HTML payload: An HTML payload is a payload that uses HTML to redirect the user, such as “<meta http-equiv=’refresh’ content=’0;url=http://evil.com’>”

Полезная нагрузка IP-адреса: полезная нагрузка IP-адреса - это полезная нагрузка, которая использует IP-адрес для перенаправления пользователя, например “http://example.com/redirect.php?url=http://192.168.1.1

Полезная нагрузка пути к файлу : полезная нагрузка, которая использует путь к файлу для перенаправления пользователя, например “http://example.com/redirect.php?url=file:///etc/passwd

Как защититься от уязвимости открытого перенаправления

Существует несколько способов защиты от уязвимостей с открытым перенаправлением, включая использование правил брандмауэра и правил Sigma. Правила Sigma - это способ обнаружения подозрительной активности и оповещения о ней, в то время как правила брандмауэра используются для блокирования трафика, соответствующего определенным критериям.

1. Firewall rules: Firewall rules can be used to block traffic to specific URLs or IP addresses that are known to be malicious. For example, a firewall rule could be created to block traffic to any URL that contains the string “<ins>http://evil.com</ins>”.

2. Sigma rules: Sigma rules can be used to detect and alert on suspicious activity, such as an excessive number of redirects to a specific URL or IP address. For example, a Sigma rule could be created to detect and alert on any redirect that contains the string “<ins>http://evil.com</ins>”.

3. Правила WAF (брандмауэра веб-приложений). WAF может помочь защитить от уязвимостей с открытым перенаправлением, проверяя входящий трафик и блокируя любые запросы, содержащие вредоносные полезные нагрузки или попытки использовать уязвимости с открытым перенаправлением.

4. Проверка входных данных: проверка входных данных - один из лучших способов защиты от открытых уязвимостей перенаправления. Проверяя вводимые пользователем данные, вы можете убедиться, что приложение принимает только допустимые URL-адреса и отклоняет любые URL-адреса, содержащие вредоносную полезную нагрузку.

5. Системы управления информацией о безопасности и событиями (SIEM): системы SIEM могут помочь обнаруживать и предупреждать о подозрительных действиях, таких как чрезмерное количество перенаправлений на определенный URL или IP-адрес.

6. Службы фильтрации URL-адресов: эти службы могут помочь блокировать трафик на определенные URL-адреса или IP-адреса, которые, как известно, являются вредоносными.

7. Фильтрация на основе DNS: фильтрация на основе DNS может помочь блокировать трафик на определенные URL-адреса или IP-адреса, которые, как известно, являются вредоносными.

8. Сетевые брандмауэры: сетевые брандмауэры могут помочь блокировать трафик на определенные URL-адреса или IP-адреса, которые, как известно, являются вредоносными.

9. Сети доставки контента (CDN): CDN могут помочь защитить от уязвимостей с открытым перенаправлением, кэшируя веб-страницы и отфильтровывая любые запросы, содержащие вредоносные полезные нагрузки или попытки использовать уязвимости с открытым перенаправлением.

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

11. Сканеры уязвимостей: сканеры уязвимостей могут помочь обнаружить уязвимости с открытым перенаправлением путем обхода веб-приложений и выявления любых потенциальных уязвимостей.

Меры по устранению уязвимости открытого перенаправления

Существует несколько методов смягчения последствий, которые можно использовать для защиты от уязвимостей с открытым перенаправлением:

1. Проверка входных данных: Одним из лучших способов защиты от уязвимостей с открытым перенаправлением является проверка введенных пользователем данных. Проверяя вводимые пользователем данные, вы можете убедиться, что приложение принимает только допустимые URL-адреса и отклоняет любые URL-адреса, содержащие вредоносную полезную нагрузку.

2. Белый список: белый список - это метод, который можно использовать для разрешения перенаправления только на определенные, заведомо подходящие URL-адреса.

3. Использование политики безопасности контента (CSP): CSP - это функция безопасности, которая может использоваться для предотвращения межсайтового скриптинга (XSS) и других типов атак путем указания, какие источники контента разрешено загружать браузеру.

4. Использование проверки на основе токенов: проверка на основе токенов - это метод, который можно использовать для предотвращения открытых уязвимостей перенаправления, гарантируя, что токен включен в URL перенаправления и что токен можно использовать только один раз.

5. Использование проверки реферера: проверка реферера - это метод, который можно использовать для предотвращения открытых уязвимостей перенаправления путем проверки заголовка HTTP referrer, чтобы убедиться, что запрос на перенаправление поступает из надежного источника.

6. Использование политики того же источника (SOP): Политика того же источника - это функция безопасности, которая не позволяет веб-странице отправлять запросы в домен, отличный от того, который обслуживал веб-страницу. Это может помочь предотвратить открытые уязвимости перенаправления, гарантируя, что перенаправления разрешены только для одного и того же домена.

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

8. Использование безопасных файлов cookie: Использование флага Secure и флага HttpOnly для файлов cookie может помешать злоумышленнику украсть значения файлов cookie с помощью XSS и открыть уязвимости перенаправления.

Заключение

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

Другие Услуги

Готовы к безопасности?

Связаться с нами