ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Этичный хакинг или пентестинг (https://forum.antichat.xyz/forumdisplay.php?f=209)
-   -   HACKER101 (https://forum.antichat.xyz/showthread.php?t=562228)

kimnatsau 15.02.2018 13:04

Статья для участия в конкурсена античат
Многие видели hackerone выложили курс по безопасности веба с видеоуроками как по мне уроки для совсем начинающих но к ним есть практические задания которые оказались очень даже интересными и тут я опишу некоторые решения которые получились у меня.

level 0: Breakerbank

Идем по ссылке https://levels-a.hacker101.com/levels/0/
Видим простой интерфейс «банка» с возможностью перевода .

https://forum.antichat.xyz/attachmen...8683375418.png

В сорцах есть интересные комментарии

HTML:


Код:


и

Значит нам дали четкое задание что и где искать.

CSRF
Сразу видим в форме нет токена проверяем при помощи burp csrf poc generator

https://forum.antichat.xyz/attachmen...8683531888.png

Работает!
Если ввести в поле amount отрицательное число покажут ссылку на правильно оформленный отчет для этой уязвимости.

Код:


Код:

Here's a simple bug report for level 0.  There are quite a few other bugs to find, so don't think you can get away with just this one!

Title: Cross-Site Request Forgery

Severity: Critical

Description: The "Transfer Funds" functionality is vulnerable to CSRF due to no session-specific random token being attached to the form.

Reproduction Steps:
1) Go to the Transfer Funds page
2) Submit a funds transfer
3) Note that the only data transmitted is the destination and the amount.

You can also use the following proof of concept to submit an automatic transfer:

   
       
       
   

Impact: Due to the simple nature of this vulnerability, it's possible for an attacker to transfer funds from any victim whom he can convince to access a page controlled by the attacker.  In this proof of concept, it's done via form autosubmission in plain view, but this could be performed in a hidden IFrame, leaving the user no clue that an attack has happened at all.

Mitigation: Proper CSRF tokens should be used on all forms.  You can read more here: https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)

Affected Assets: http://h101levels.appspot.com/levels/0

Можно использовать в качестве примера оформления отчетов в багбаунти.

Reflected XSS

В глаза бросается ссылка для отправления платежа.
https://levels-a.hacker101.com/levels/0/?to=973
Но параметр to фильтруется и у меня придумать вектор так и не получилось но если изменить ссылку до вида
https://levels-a.hacker101.com/levels/0/?to=973&amount=2
Параметр amount не фильтруется просто вставляем любой вектор, например это "> и радуемся жизни.
Authorization Bypass/Direct Object Reference
Тут я не совсем уверен что они именно это имели в виду но есть ошибка если в POST запрос добавить опцию from то приложение покажет что мы перевели не со своего счета а с указанного нами счета.

https://forum.antichat.xyz/attachmen...8683868101.png

---- Добавлено позже ----

Level 1: Breakbook
Открываем ссылку https://levels-a.hacker101.com/levels/1/
Смотрим исходники.

HTML:


Код:


CSFR
Снова CSRF правда здесь все сложнее есть токен

Токен подозрительно похож на md5 пробуем онлайн сервисы. Хеш не находится. Пробуем взять хеш от имени пользователя и он совпадает с тем что есть у нас значит в форму просто подставляется хеш и все будет работать.

Stored XSS
Простой вектор с ссылкой

Код:

http://a"onmouseover="alert(document.cookie


Forced Browsing
У каждого поста есть ссылка permalinkс айдишником поста пробуем перебирать айтишники и видим посты других пользователей.
Возможно это не баг но в данном случае он полностью подходит под описание.

---- Добавлено позже ----

Level 2: Breaker Profile

Код:


Код:


Stored XSS
Идем в редактирование профиля и видим ссылку на картинку пробуем поставить что-то типа этого:

Код:

http://breaker-studentcenter.appspot.com/%22%3E%3Cimg%20src=x%20onerror=alert(1)%3E.png)
Получаем

Еще одна XSS в форме description добавляем кавычек к цвету
И получаем такой код

Reflected XSS
Идем по ссылке link to you profile страница ошибки с выводом данных вставляем простой вектор и имеем XSS:

Код:

https://levels-a.hacker101.com/levels/2/?id=5283636286849024%22%3E%3Csvg%20onload=alert(1)%3E
Unrelated Bonus
Не представляю что имели разработчики под этим может перебор адишников интересны ваши варианты..

По идее тут еще 3 баги но что в сторону еще xss что в непонятные бонусы ничего не нашел.

kimnatsau 15.02.2018 13:23

Level 3: Breaker CMS

Опять XSS

Код:


Код:


Improper Authorization

В исходниках видим скрипт

JavaScript:


Код:

// We should only display the edit link to authenticated admins.
// http://i.imgur.com/WPaknth.jpg
var
page
=
window
.
location
.
hash
.
substring
(
1
)
;
if
(
page
==
''
)
page
=
'index'
;
var
cookies
=
document
.
cookie
.
split
(
';'
)
;
for
(
var
i
in
cookies
)
{
var
cookie
=
cookies
[
i
]
.
replace
(
/ /g
,
''
)
.
split
(
'='
)
;
if
(
cookie
[
0
]
==
'admin'
&&
cookie
[
1
]
==
'1'
)
document
.
write
(
'Edit this page'
)
;

Код проверяет значения куки и показывает ссылку на админку если оно правильное проверяем и попадаем в админ панель

https://forum.antichat.xyz/attachmen...8686611874.png

Unrelated Bonus
Мои попытки найти XSS крашили запросы и выдавался стектрейс наверное это то что нужно . В итоге уровень совсем сломался и на все запросы отвечал стектрейсом восстановить не смог можно было зайти под другим Акком и тогда все заработает но было лень.

r0hack 15.02.2018 13:25

Здравствуйте. Статья полезная, но думаю она не подходит для конкурса, так как это больше writeUP, а не обучающий материал.

kimnatsau 15.02.2018 13:26

Цитата:


lecudug сказал(а):

Что то эта на статью не тянет а уже тем более для конкурса (


Увы если все вставляешь в редактор он не постит приходится кусками причем маленькими а учитывая что форматирование в маркдауне то приходится его переделывать каждый раз(((((

---- Добавлено позже ----

Цитата:


r0hack сказал(а):

Здравствуйте. Статья полезная, но думаю она не подходит для конкурса, так как это больше writeUP, а не обучающий материал.


Без проблем уберу с конкурса только дайте до конца ее выложить..
А еще лучше скажите как сделать чтоб можно было за раз все в один пост писать?

r0hack 15.02.2018 13:29

Цитата:


kimnatsau сказал(а):

А еще лучше скажите как сделать чтоб можно было за раз все в один пост писать?


А почему не получается я не понял ? Ошибка какая-то или что возникает ?

kimnatsau 15.02.2018 13:31

Цитата:


r0hack сказал(а):

А почему не получается я не понял ? Ошибка какая-то или что возникает ?


да ошибка на экране что при предвариательном просмотрел пишет невнятное посмотрите в консоли в консоли 402 draft
о новая ошибка

Код:

Failed to load resource: the server responded with a status of 403 ()
эта ошибка возникает при предварительном просмотре


Время: 20:34