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 ZAP
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 Tester
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 і відкрити уразливості перенаправлення.

Висновок

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

Інші Послуги

Готові до безпеки?

зв'язатися з нами