Cssi

Материал из InformationSecurity WIKI
Перейти к: навигация, поиск

CSS Injection - уязвимость, позволяющая запустить произвольный CSS код на стороне жертвы.

Поиск уязвимости

Загрузка из JS

HTML код страницы может редактироваться в зависимости от действий пользователя.

Например, цвет может быть помещен в hash URL'а (то, что после решетки) и с помощью JS перенесен в CSS:

document.getElementById("...").style.cssText = "color: " + location.hash.slice(1);

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

Загрузка из backend'а

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

Например:

 <span style="color: <?php echo $_GET['color']; ?>">


Эксплуатация

Получение токенов

CSS inj -> XSS

Примеры

Полезные ссылки

https://www.owasp.org/index.php/Testing_for_CSS_Injection_(OTG-CLIENT-005)

Заметка: добавить про чтение токенов и PRSSI