- Автор темы
- #1
Привет!!!
В этой теме я хочу детально описать Xss от A до Я.
На античате много есть инфы по Xss, но ни в 1-ой из них я не нашёл хорошего обяснения для новичков, извините если я ошибаюсь...
Статью не полностю написал я, кое-что нашел в инете, и на нашем форуме, за что очень благодарен =)
Так что начнём...
========================================
### Xss это Css => Cross Site Scripting
Чтобы не путать с CSS также назвыают XSS
Впервые этот БАГ появился в 1997.
========================================
### Как используют XSS.
Для начала нам нужно знать что такое Cookie.
Если вы знаете, можете пропустить.
Cookie служат для сохранения учетных данных сайта на компьютере поситителя.
Если вы зарегестрировались на сайте под ником 'blabluble', то сайт сохранил у вас на компьютере файл с cookies, где закодированы ваши данные.
А если вы есть админ и у вас есть доступ к сайту, а я - юзер, который украл у вас(админа) cookies, то я могу спокойно зайти на сайт, и сайт меня определяет как 'admin' - у меня будут администраторские права.
Для смены(подстановки украденных) кук советую использувать прогу CookieEdit для IE или встроенные функции в Опере и Фаерфоксе.
========================================
Мы разобрались что такое куки идём дальше...
Чтобы перехватить cookies надо найти место на сайте, где можно выполнить XSS-атаку.
### Что такое XSS-атака?
XSS атаки - это атаки не на сам сайт, а на пользователей сайта.
XSS - это недоработка в фильтре, приложении.
Бывают пассивные XSS и активные XSS.
Что такое пассивные XSS?
Пассивные - это Xss, которые требуют от жертвы непосредственного участия + есть специфические ограничения и сложности.
Поэтому, пассивные XSS не очень ценятся.
Например, нужно заставить её пройти по ядовитой ссылке, что потребует социальной инженерии, хитрости.
Активные - это XSS, которые, не требуют никаких дополнительных действий со стороны жертвы - ей достаточно лишь открыть страницу с вашим XSS и ява-код выполнится автоматически.
Благодаря своей автоматизированности - они очень полезны и ценны.
Например, активные хсс существуют в BB-тегах из-за недостаточной фильтрации, когда вы оставляете сообщение на форуме\гостевухе\чате, которое будет всегда активен при каждом обновлении.
========================================
### Итак, перейду конкретно к тому, как найти в данном сайте XSS.
Как я раньше уже писал что XSS состоит из тегов, они же состоят из html, и javascript языка =).
Javascript можно вписывать в html.
Можно кодировать, чтобы обойти фильтры. Но об этом позже.
Как узнать, что XSS на даном сайте проходит?
Ужасна распрастраннёная узявимость типа
<script>alert()</script> Пытаемся вставить во все различные поля этот скрипт... если вышло сообщение значит скрипт обработался и выполнился.
Самая распостраненая XSS (наблюдаеться во всех местах где плохая фильтрация):
"><script>alert()</script>
Вся суть в "> .
Давайте подумаем, что мы делаем, когда вводим в поле "><script>alert()</script> , что происходит?
Мы вводим в форму "><script>alert()</script> какой-то переменной присваиваеться значение поля. Переменная обрабатывается,"> выполняеться, закрывает
скрипт и выпролняет <script>alert()</script>
Эта XSS самая распостраненая в поисковиках:
Просматриваем все поля сайта и пытаемся вставить "><script>alert()</script>
Если вышло сообщение - вы нашли XSS...
========================================
### А как определить есть фильтр или нет?
Просто в любое поле вводим: '';!--"<fuck>=&{()}
Дальше открываем html страничку и ищем слово "fuck"
и смотри последующие сиволы..
Если <> так и остались то это перваый признак уязвимости - значит фильтр имеет дырку.
Если ,"'\ символы остались такими, как были введены - это второй признак уязвимости - возможные дополнительные символы к последующей XSS атаке.
Затем, если открыв HTML, вы не обнаружили <> то скорее всего дырка в фильтре.
Если открыв HTML вы обнаружили, что <> заменены на другие символы, то это облом - фильтр по крайней
мере функционирует нормально.
Возможно еще ввести в поле для проверки фильтрации вот так: "><>'"`,/\?@%
В этой теме я хочу детально описать Xss от A до Я.
На античате много есть инфы по Xss, но ни в 1-ой из них я не нашёл хорошего обяснения для новичков, извините если я ошибаюсь...
Статью не полностю написал я, кое-что нашел в инете, и на нашем форуме, за что очень благодарен =)
Так что начнём...
========================================
### Xss это Css => Cross Site Scripting
Чтобы не путать с CSS также назвыают XSS
Впервые этот БАГ появился в 1997.
========================================
### Как используют XSS.
Для начала нам нужно знать что такое Cookie.
Если вы знаете, можете пропустить.
Cookie служат для сохранения учетных данных сайта на компьютере поситителя.
Если вы зарегестрировались на сайте под ником 'blabluble', то сайт сохранил у вас на компьютере файл с cookies, где закодированы ваши данные.
А если вы есть админ и у вас есть доступ к сайту, а я - юзер, который украл у вас(админа) cookies, то я могу спокойно зайти на сайт, и сайт меня определяет как 'admin' - у меня будут администраторские права.
Для смены(подстановки украденных) кук советую использувать прогу CookieEdit для IE или встроенные функции в Опере и Фаерфоксе.
========================================
Мы разобрались что такое куки идём дальше...
Чтобы перехватить cookies надо найти место на сайте, где можно выполнить XSS-атаку.
### Что такое XSS-атака?
XSS атаки - это атаки не на сам сайт, а на пользователей сайта.
XSS - это недоработка в фильтре, приложении.
Бывают пассивные XSS и активные XSS.
Что такое пассивные XSS?
Пассивные - это Xss, которые требуют от жертвы непосредственного участия + есть специфические ограничения и сложности.
Поэтому, пассивные XSS не очень ценятся.
Например, нужно заставить её пройти по ядовитой ссылке, что потребует социальной инженерии, хитрости.
Активные - это XSS, которые, не требуют никаких дополнительных действий со стороны жертвы - ей достаточно лишь открыть страницу с вашим XSS и ява-код выполнится автоматически.
Благодаря своей автоматизированности - они очень полезны и ценны.
Например, активные хсс существуют в BB-тегах из-за недостаточной фильтрации, когда вы оставляете сообщение на форуме\гостевухе\чате, которое будет всегда активен при каждом обновлении.
========================================
### Итак, перейду конкретно к тому, как найти в данном сайте XSS.
Как я раньше уже писал что XSS состоит из тегов, они же состоят из html, и javascript языка =).
Javascript можно вписывать в html.
Можно кодировать, чтобы обойти фильтры. Но об этом позже.
Как узнать, что XSS на даном сайте проходит?
Ужасна распрастраннёная узявимость типа
<script>alert()</script> Пытаемся вставить во все различные поля этот скрипт... если вышло сообщение значит скрипт обработался и выполнился.
Самая распостраненая XSS (наблюдаеться во всех местах где плохая фильтрация):
"><script>alert()</script>
Вся суть в "> .
Давайте подумаем, что мы делаем, когда вводим в поле "><script>alert()</script> , что происходит?
Мы вводим в форму "><script>alert()</script> какой-то переменной присваиваеться значение поля. Переменная обрабатывается,"> выполняеться, закрывает
скрипт и выпролняет <script>alert()</script>
Эта XSS самая распостраненая в поисковиках:
Просматриваем все поля сайта и пытаемся вставить "><script>alert()</script>
Если вышло сообщение - вы нашли XSS...
========================================
### А как определить есть фильтр или нет?
Просто в любое поле вводим: '';!--"<fuck>=&{()}
Дальше открываем html страничку и ищем слово "fuck"
и смотри последующие сиволы..
Если <> так и остались то это перваый признак уязвимости - значит фильтр имеет дырку.
Если ,"'\ символы остались такими, как были введены - это второй признак уязвимости - возможные дополнительные символы к последующей XSS атаке.
Затем, если открыв HTML, вы не обнаружили <> то скорее всего дырка в фильтре.
Если открыв HTML вы обнаружили, что <> заменены на другие символы, то это облом - фильтр по крайней
мере функционирует нормально.
Возможно еще ввести в поле для проверки фильтрации вот так: "><>'"`,/\?@%
