Как багхантеру искать XSS-уязвимости через наложение парсеров: исследование Positive Technologies

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

Привет, Хабр! Меня зовут Игорь Сак-Саковский, и я уже семь лет занимаюсь безопасностью веб-приложений в команде PT SWARM в компании Positive Technologies. В этой статье расскажу о моем недавнем исследовании, которое вошло в топ-10 методов веб-хакинга 2021 года по версии PortSwigger.

При общении в сети мы постоянно используем смайлики и выделяем текст в сообщениях. В Телеграме, Википедии, на GitHub и форумах это реализовано при помощи BBCode, MediaWiki и других языков разметки, использующих парсеры. Парсеры находят в сообщениях специальный код, тег или символ и преобразуют его в красивый текст с помощью HTML. А как известно, везде, где есть HTML, могут быть и XSS-атаки.

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

В статье вас ждет:

  1. Вводная теория о том, что такое XSS и чем он опасен.

  2. Советы, как искать XSS при отправке красивых сообщений.

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

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

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

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

Ниже текст сообщений, который приводил к уязвимостям.

Если с первого взгляда вам это кажется кашей, не пугайтесь — к концу статьи станет понятнее

Источник: https://habr.com/ru/companies/pt/articles/729134/


Интересные статьи

Интересные статьи

Каждый, кто хоть раз занимался хобби-проектами на основе микроконтроллеров, знает, что такая идея проходит множество итераций, прежде чем займёт своё законное место на пыльной полке будет служить ве...
ВведениеВ данной статье я бы хотел рассмотреть проблему обновления PHP в виртуальной машине BitrixVM, и действия, которые возможно применить если выполнение переезда на машину с обновленным ПО невозмо...
Атака на Solar Winds в 2020 году привлекла особое внимание к теме supply chain. Кратко об атаке (ну вдруг кто-то не в курсе): злоумышленники получили доступ к системе сбо...
Коллеги, добрый день! Данная статья является отправной точкой в цикле статей по продуктам Positive Technologies. Первая часть будет посвящена MaxPatrol 8, а сегодня в рамках данной ...
К написанию данной концепции меня побудила проблема, с которой я сталкивался раз за разом, приходя на новый проект: за 5 лет коммерческой разработки мне постоянно "везло" приходить на п...