Подробное руководство по межсайтовому скриптингу (XSS) (ч.1)

Kenshiro

Script Kiddie
22.05.2020
10
1
6
Сегодня в этой статье мы совершим экскурсию по межсайтовому скриптингу и узнаем, как злоумышленник выполняет вредоносные коды JavaScript во входных параметрах и генерирует такие всплывающие окна, чтобы испортить веб-приложение или захватить сеанс активного пользователя.

Что такое JavaScript?

Динамическое веб-приложение стоит на трех столпах: HTML, который определяет полную структуру, CSS, описывает его общий внешний вид, и JavaScript, который просто добавляет мощные взаимодействия с приложением, такие как окна предупреждений, эффекты ролловера и т. Д. выпадающие меню и другие вещи.

Итак, JavaScript является языком программирования в Интернете и считается одним из самых популярных языков сценариев, поскольку около 93% всех веб-сайтов работают с Javascript из-за некоторых из его основных функций, т.е.

· Легко научиться.

· Помогает создавать интерактивные веб-приложения.

· Это единственный язык программирования, который может интерпретироваться браузером, т.е. браузер запускает его, а не отображает.

· Он гибкий, так как просто смешивается с кодами HTML.


Обработчики событий JavaScript
Когда код JavaScript встроен в HTML-страницу, этот JavaScript «реагирует» на некоторые конкретные события, например:

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


Onload

Javascript использует функцию onload для загрузки объекта на веб-страницу. Например, я хочу создать оповещение для пользователей, которые посещают мой веб-сайт; Приведу следующий код JavaScript.

Код:
<body onload=alert(‘Welcome to Hacking Articles’)>
Поэтому всякий раз, когда тег body загружается, появляется предупреждение со следующим текстом «Добро пожаловать в статьи о взломе». Здесь загрузка тега body - это «событие» или событие, а «onload» - это обработчик события, который решает, какое действие должно произойти с этим событием.


При наведении мыши

С обработчиком событий Onmouseover, когда пользователь наводит курсор на определенный текст, будет выполнен встроенный код javascript.

Например, давайте разберемся со следующим кодом:

Код:
<a onmouseover=alert(“50% discount”)>surprise</a>
Теперь, когда пользователь наводит курсор на отображаемый текст на странице, появляется всплывающее окно со скидкой 50%.
Точно так же существует множество обработчиков событий JavaScript, которые определяют, какое событие должно произойти для такого типа действий, как прокрутка вниз или когда изображение не загружается и т. д.

  • onclick: Используйте это для вызова JavaScript при нажатии (ссылка или поля формы)
  • onload: Используйте это, чтобы вызвать JavaScript после завершения загрузки страницы или изображения.
  • onmouseover: Используйте это, чтобы вызвать JavaScript, если мышь проходит по какой-либо ссылке.
  • onmouseout: Используйте это, чтобы вызвать JavaScript, если мышь проходит какую-то ссылку.
  • onunload: Используйте это для вызова JavaScript сразу после того, как кто-то покинет эту страницу.
Введение в межсайтовый скриптинг (XSS)
Межсайтовый скриптинг, который часто сокращенно называют «XSS», представляет собой атаку путем внедрения кода на стороне клиента, при которой вредоносные скрипты внедряются на доверенные сайты. XSS встречается в тех веб-приложениях, где входные параметры не очищены или не проверены должным образом, что позволяет злоумышленнику отправлять вредоносные коды Javascript другому конечному пользователю. Браузер конечного пользователя не знает, что этому сценарию нельзя доверять, и поэтому выполнит сценарий.

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

Не знаете, что происходит? Давайте проясним это на следующем примере.

Рассмотрим веб-приложение, которое позволяет пользователям создавать «краткое описание» в своем профиле, который, таким образом, виден всем. Теперь злоумышленник замечает, что поле описания неправильно проверяет вводимые данные, поэтому он внедряет свой вредоносный скрипт в это поле.

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


1600752429744.png
 

Об LS-LA

  • Мы, группа единомышленников, основная цель которых повышать уровень знаний и умений.
    Не забывая о материальном благополучии каждого)

About LS-LA

  • We, a group of like-minded people, whose main goal is to increase the level of knowledge and skills.
    Not forgetting about everyone’s material well-being)

Быстрая навигация

Пользовательское меню