LINUX.ORG.RU

Как найти xss уязвимость ?

 


0

4

Сабж ? Есть сайт на котором если выполнить ссылку вида rbc.ru#<img src=sdsds onerror=alert(/bla-bla-bla/);> выполняется alert. Вопрос: как найти место где это выполняется ? Сайт довольно криво написан и досконально разбираться в javascript который там используется нет желания.



Последнее исправление: Jopich (всего исправлений: 2)

как найти место где это выполняется ?

На клиенте, ваш КО

тебе в любом случае нужно засунуть код на сервер

invokercd ★★★★
()
Последнее исправление: invokercd (всего исправлений: 1)

В обработчике $_GET, сайт на пхп небось. Где-то все, что указано в QUERY подставляется как есть в страницу. В результате, браузер видит <img src=sdsds onerror=alert(/bla-bla-bla/);> и исполняет.

в javascript

Тут тоже самое. Из js можно изменять DOM как душа пожелает.

P.S. Чтобы найти откуда копать изпользуй DragonFly из Opera 12 или в Firefox Debug Console.

gh0stwizard ★★★★★
()
Последнее исправление: gh0stwizard (всего исправлений: 3)

#

В раутинге внутри твоего JS.

x3al ★★★★★
()

Сайт довольно криво написан и досконально разбираться в javascript который там используется нет желания.

Ну не надо досконально. Судя по «#», там уязвимость, скорее всего, прямо на клиенте. Вот и ищи, где на той странице обращаются к window.location и что с ним дальше происходит.

proud_anon ★★★★★
()

В новых браузерах есть события, прилетающие при изменении DOM. Я бы подписался на эти события и поставил бы там breakpoint и смотрел бы, кто DOM мутирует. Рано или поздно и до этого <img> добрался бы. А там уже всё будет видно.

Legioner ★★★★★
()

Ещё вариант - в гуглохроме developer tools включить остановку по исключению, а вместо alert бросить исключение. Если получится - будет stacktrace.

AlexKiriukha ★★★★
()
Ответ на: комментарий от Legioner

Зато может модифицироваться внутри js и затем отдаваться серверу в виде ajax.

Вобщем, без кода это все гадания на кофейной гуще.

gh0stwizard ★★★★★
()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Ответ на: комментарий от AlexKiriukha

Толку только не будет от этого стектрейса, он бросится уже после того, как код, добавляющий элемент в DOM отработает.

Legioner ★★★★★
()

Ну и отлично, попробуй

alert('ОЧЕНЬ_СТРАННАЯ_ФРАЗА')

А потом сделай в консоли Хрома:

copy(document.documentElement.outerHTML)

Выгрузи в текстовый редактор и поищи «ОЧЕНЬ_СТРАННАЯ_ФРАЗА», думаю, ты и найдешь где заинжектилось.

noomorph
()
Последнее исправление: noomorph (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.