Учебники

Этический взлом – межсайтовый скриптинг

Межсайтовый скриптинг (XSS) – это атака с использованием кода, позволяющая злоумышленнику выполнить вредоносный JavaScript в браузере другого пользователя.

Атакующий не нацеливается непосредственно на свою жертву. Вместо этого он использует уязвимость на веб-сайте, который посещает жертва, чтобы заставить веб-сайт доставлять ему вредоносный JavaScript. Для браузера жертвы вредоносный JavaScript представляется законной частью веб-сайта, и, таким образом, веб-сайт выступает непреднамеренным сообщником злоумышленника. Эти атаки могут осуществляться с использованием HTML, JavaScript, VBScript, ActiveX, Flash, но наиболее часто используемым XSS является вредоносный JavaScript.

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

пример

Давайте рассмотрим пример, чтобы понять, как это работает. У нас есть уязвимая веб-страница, которую мы получили на метастабильной машине. Теперь мы проверим поле, которое выделено красной стрелкой для XSS.

Metasploitable

Прежде всего, мы делаем простой скрипт оповещения

<script>  
   alert(‘I am Vulnerable’)  
</script>

Это даст следующий результат –

Простое оповещение

Типы XSS-атак

Атаки XSS часто делятся на три типа –

  • Постоянный XSS, где вредоносная строка происходит из базы данных сайта.

  • Отраженный XSS, где вредоносная строка происходит от запроса жертвы.

  • XSS на основе DOM, где уязвимость заключается в коде на стороне клиента, а не в коде на стороне сервера.

Постоянный XSS, где вредоносная строка происходит из базы данных сайта.

Отраженный XSS, где вредоносная строка происходит от запроса жертвы.

XSS на основе DOM, где уязвимость заключается в коде на стороне клиента, а не в коде на стороне сервера.

Как правило, межсайтовый скриптинг обнаруживается сканерами уязвимостей, поэтому вам не нужно выполнять всю ручную работу, включив в него JavaScript, например:

<script>  
   alert('XSS') 
</script>

Burp Suite и acunetix считаются лучшими сканерами уязвимостей.

Быстрая подсказка

Чтобы предотвратить атаки XSS, помните следующее:

Проверьте и проверьте все поля формы, такие как скрытые формы, заголовки, файлы cookie, строки запросов.

Реализуйте строгую политику безопасности. Установите ограничение символов в полях ввода.