Account takeover via Open Redirect

Ninja Zod

Original poster
Member
Сообщения
11
Реакции
16
Посетить сайт
hrs-hacker-attack-head.jpg
Привет.
Я новенький в дипвебе, но не совсем новенький в ИБ. Хочу создать на данном форуме нечто своего блога в котором буду писать опыт пентеста (а точнее WAPT - web application penetration testing; тестирование веб-приложений на проникновение). Имел опыта баг хантинга в платформе HackerOne и Intigriti (ссылки на профили не стану оставлять по понятным причинам), пока не столкнулся с некоторыми проблемами да и в целом решение погрузится в хакинг у меня изначально было ради пути "black hat".

Я не пентестер в обычном понимании, т.е. я не смогу провести аудит безопасности корпоративной сети, не шарю толком за безопасность Windows/Linux, а основная моя специализация это веб-хакинг.
В данном посте хочу положить старт и рассказать о довольно интересной связке одного логического бага (интересная реализация open redirect) и ряда действий которые привели к захвату аккаунта на одном криптовалютном сайте (естественно всё делалось на своем тестовом аккаунте). Картинок и скриншотов так же не будет.

Для начала думаю стоит разъяснить ряд терминов:
Account takeover - поглощение/захват аккаунта
Open redirect - открытое перенаправление. Например если есть URL типа

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

перенаправляющий на example.com, если вместо example.com подставить свой сайт, например evil.com и произойдет перенаправление на

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

, значит это уязвимость open redirect.
Header - заголовки (в контексте статьи значит заголовки HTTP).
Фаззинг - подстановка/брутфорс пейлоадами.

НАЧНЕМ

Просматривая программы в h1 (hackerone) наткнулся на криптовалютный ресурс и решил проверить основной домен. Сайт показался мне довольно защищенным и даже спустя двое суток тестирования я ничего обнаружить так и не смог за, что мог бы зацепится глаз. И просто уже просто как завершающий этап тестирования решил пофаззить хедеры. Подставлял различные пейлоады и для SQL injection и для XXE injection и XSS и т.д. Фаззил почти все заголовки и User agent и host и origin и заметил интересный ответ когда фаззил заголовок Referer (это то откуда перешел на страницу), т.е. этот заголовок выглядит примерно так:
Referer: https://yandex.ru
что означает, что на данную страницу пользователь перешел с Яндекса.
А ответ сервера был примечателен вот чем: если удалить полностью URL из заголовка реферер и подставить эксплойт для инъекции, например
Referer: order by 1!=1-- j
то ответ от сервера выглядел так
302 Redirect in https://yandex.ruorder by 1!=1-- j
Заметили? Сайт решал куда перенаправлять (то бишь редиректить по заголовку реферер и скоро объясню в чем логика) тогда я попробовал удалить яндекс из реферера и подставить другой URL адрес, например

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

и в ответ пришло заветное:
302 Redirect in https://evil.com и меня естественно редиректнуло в evil.com. Bingo!!!

Я сразу же побежал сдавать баг обозначив его как Open Redirect, но обломался от ответа стаффа (stаff - сотрудники h1 которые проводят предварительную проверку репортов, что бы не слали всякий мусор) где они спросили -"и какой импакт (влияние) от этого? ты редиректишь самого себя. Найди вариант того как это может заюзать злоумышленник, что бы мы подтвердили твой репорт и передали команде безопасности". Ступор!
Еще почти двое суток гуглежа ушло на нахождение вариантов. Перечитал все российские, немецкие, китайские и индийские статьи и нашел таки одну единственную статью на английском языке от исследователя в которой он нашел похожую уязвимость и сам придумал вектор атаки. И тут начинается самое интересное.

РАЗВЯЗКА И ЗАХВАТ АККАУНТА

Суть использования такой баги заключалась вот в чем: раз сервер решает куда перенаправлять по Рефереру (например вы заходите не авторизовавшись на страницу vk.com/im -т.е. сообщения, вас редиректнет на vk.com/login и сохранит в реферере vk.com/im, что бы после авторизации вернуть в раздел сообщений). Соответственно вот, что надо сделать хакеру:
он создает поддельный сайт в котором имеется ссылка на auth.site.com (т.е. на страницу авторизации). и человек перейдя по ссылке в хедере оставляет сайт злоумышленника и после авторизации его редиректит обратно на сайт хакера. На этом можно было бы остановится если использовать это для банального фишинга - кстати в статье именно это и рассматривалось. Создать очень похожий сайт фишинговый с ссылкой на основной сайт и после авторизации вас редиректит на фишинговый и жертва практически ничего не замечает. Но в моем случае всё было еще круче.
Уязвимость тут заключается вот в чем - авторизация происходит по технологии OAuth - она генерирует ключ в GET запросе, т.е. строке браузера, которая выглядит примерно таким страшным образом

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.


и хакер посмотрев в логи запросы к сайту увидев этот ключ может тупо украсть OAuth токен жертвы и оказаться в аккаунте жертвы. т.е. тут не просто опен редирект, а аккаунт тейк овер, т.е. захват аккаунта.

ЗАКЛЮЧЕНИЕ

Доработанный и заскринованный репорт я сдал повторно, указав весь ход работы. Его приняли. Но дали Duplicate, т.е. кто-то до меня зарепортил эту уязвимость. Согласен ли я с таким решением? - конечно же нет. Доволен ли собой? - однозначно да. Одна эта бага дала значительный прирост мне как хакеру.
На этом у меня всё. Оставляйте отзывы есть ли смысл продолжать писать статьи на такие темы.
 
Последнее редактирование модератором:

Nikiys

Member
Сообщения
4
Реакции
4
Посетить сайт
Писать такие статьи безусловно стоит! Но в статьях всегда хотелось бы видеть подтверждение слов (хоть как в первом посте).
Иначе, со временем такие темы превращаются в странницу фантазий ТСа :)
 
Сообщения
9
Реакции
3
Посетить сайт
да hackerone говнище то ещё ;) вот последний open redirect который им репортили.


p.s кому интересно тут в бою на канале много

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

(не реклама) от гула до киви все ещё работает так как им по хуй на open redirect по части статьи реально поверхностная не скринов не линков пиздец прям секретное что-то,скорее теоретик и не больше
 
Название темы
Автор Заголовок Раздел Ответы Дата
K NORD VPN Premium Account Passwords Раздача (аккаунтов/ключей) 0
K Продам/Sell account Luxsocks Аккаунты/Админки/Документы 0
С Продам Account Shop - ivi/Filmix/windscribe/Avito (Самые низкие цены) Аккаунты/Админки/Документы 0
M WTS ACCOUNT AMAZON WITH ORDER 2016 Full Access Аккаунты/Админки/Документы 0
S Maccosmetics Account Checker 2020 Уязвимости и взлом 0
S SEPHORA Account Checker 2020 Уязвимости и взлом 0
M # I'm buying USA bases for amazon (private, valid ..) Or amazon account with valid mail + coockies. at a high price. Аккаунты/Админки/Документы 0
ZIQUE [SPOTIFY] 249X SPOTIFY ACCOUNT | FAMILY - PREMIUM | CX Раздача email 1
ZIPO 2X ACCOUNT EXSPRES VPN PREMIUM Раздача (аккаунтов/ключей) 1
ZIPO x3 Hulu Premium Account Раздача (аккаунтов/ключей) 0
ZIQUE 20x Account Nord VPN premium - Expires (Date) : 2022 - 2020 -2019 Раздача (аккаунтов/ключей) 0
T 30x Account Nord VPN premium - Expires (Date) : 2022 - 2020 -2019 Корзина 0
T 63 netflix premium account Корзина 0
T x10 Spotify Premium / Familly Account Корзина 0
T Spotify 59 x Spotify Premium account Корзина 0
T 2X DEEZER FAMILY ACCOUNT Корзина 0
T UPLAY account 4 Корзина 0
T0pDro4eR League of Legends Account Checker 9.1 patched by RzC Бруты/Парсеры/Чекеры 0
L Dumps, Wu Transfer, Bank Transfer, Shopping And Paypal account Transfer ... Предоставляю работу. Ищу специалиста. 0
L Продам Dumps, Wu Transfer, Bank Transfer, Shopping And Paypal account Transfer ... Все что не подошло по разделу 0
slovokek Куплю Ищу эмплоерские акки Careerbuilder.com и т.д покупаю на постоянной основе JOB account Куплю/Обменяю 0
ForeverAlone Steam account БЕСПЛАТНО Раздача (аккаунтов/ключей) 1
АнАлЬнАя ЧуПаКаБрА Paypal Account Checker Бруты/Парсеры/Чекеры 0
АнАлЬнАя ЧуПаКаБрА Amazon Account Cracker By Crank Destroyed by StopLQ Бруты/Парсеры/Чекеры 1
M LoadTeam - Payouts via Paypal. Minimum US$1 payout. Free $0.20 just to install. Трафик, загрузки, инсталлы, iframe 0

Название темы