Уязвимость exchanger1
В этой статье, я опишу весьма интересную с точки зрения логики находку.
Я дал людям на фикс 30 дней. Увы, благодарить администрация не умеет )
Часть 1
Я говорю о безопасности пользователей в общем.
Часть полученного вознаграждения я вывел используя ваш обменник.
Мне стало забавно почитать о вашем проекте подробнее и я наткнулся на "https://exchanger1.com/page/about" .
Пункт 4 вкладки "Безопасность работы с нами", говорит нам о защите любых данных пользователей. (Все это гарантирует сохранность любых данных пользователей на нашем сайте.)
Весьма громкое заявление !
Учитывая все факторы, я обнаружил весьма серьезную уязвимость в системе помощи пользователям.
Злоумышленник может получать доступ к тикетам и писать в них от имени администрации!
также можно просто закрыть тикет.
Неправильное разграничение привилегий может нести за собой большие последствия...
Часть 2
В результате исследования модуля помощи клиентам, также была найдена уязвимость в реализации api.
Злоумышленник может Деанонимизировать транзакции пользователя.
Рабочий пример:
Я перебрал транзакции пользователей по номеру тикета.
https://pix.my/o/8a9Tvk?1513363007=
Получился достаточно большой результат.
транзакция на обмен 300$ пренадлежит автору тикета N-320014. (
23:00 21.11.2017 )
По номеру тикета, api выдает нам информацию кодированную в Unicode.
Полученная транзакция в свою очередь содержит суммы переводов.
Пример расшифровки ответа api на транзакцию 320014:
{"error":false,"_content":{"#trx-status":"<h5>
<small>Статус:</small> Завершена</h5>
<div class="description">
<a href="/exchange/status/8661199">Заявка № 8 661 199</a>
</div>
<div class="exchange-error">
<div class="money-error">
<span class="first-currency">300,00</span>
<div class="image-wrapper">
<img class="currency_logo"
src="/bundles/x2face/images/currency/advcash.png"
height="27" width="27" alt="#">
</div>
<span class="money">USD</span>
</div>
<div class="money-error">
<span class="second-currency">7 800,00</span>
<div class="image-wrapper">
<img class="currency_logo"
src="/bundles/x2face/images/currency/visamaster.png"
height="24" width="24" alt="#">
</div>
<span class="money">UAH</span>
</div>
</div>
<div class="time-money">
<a class="btn small status" href="#" data-exec="jQuery(this).closest('form').trigger('submit');">Проверить статус</a>
</div>exchanger_pm"}}
Техническая и детальная информация:
1) для получения доступа к чужому тикету, злоумышленнику достаточно заменить идентификатор.
Злоумышленник может от имени администрации попросить пользователя выслать ту или иную информацию.
2) для получения транзакции по id тикета, злоумышленику достаточно совершить GET запрос на:
https://exchanger1.com/profile/tickets/history/{$ID}/status
позже декодировать полученную информацию.
Простой вектор атаки:
найти транзакцию и получить ее сумму.(используя баг в api)
Располагая этой информацией, попросить пользователя подтвердить свои документы.
Статистика:
Перебрав диапазон в 160 тикетов, я получил доступ к 31 транзакции.

Информационная безопасность IT
1.5K постов25.6K подписчиков
Правила сообщества
Обязательно к прочтению для авторов:
1. Если вы добавляете пост, утверждающий об утечке данных или наличии дыр в системе, предоставьте ссылку на источники или технически подкованное расследование. Посты из разряда "Какой-то банк слил данные, потому что мне звонили мошенники" будут выноситься в общую ленту.
2. Все вопросы "Как обезопасить сервер\приложение\устройство" - в лигу "Компьютер это просто".
Обязательно к прочтению для всех:
Добавление ссылки разрешено если она не содержит описание коммерческих (платных) продуктов и/или идентификаторов для отслеживания перехода и для доступа не нужен пароль или оплата в т.ч. интернет-ресурсы, каналы (от 3-х тематических видео), блоги, группы, сообщества, СМИ и т.д.
Запрещены политические holy wars.
По решению модератора или администратора сообщества пользователь будет забанен за:
1. Флуд и оскорбление пользователя, в т.ч. провокация спора, флуда, холивара (высказывание без аргументации о конкретной применимости конкретного решения в конкретной ситуации), требование уже данного ответа, распространение сведений порочащих честь и репутацию, принижающих квалификацию оппонента, переходы на личности.
2. Публикацию поста/комментария не соответствующего тематике сообщества, в том числе обсуждение администраторов и модераторов сообщества, для этого есть специальное сообщество.
3. За обвинение в киберпреступной деятельности.
4. За нарушение прочих Правил Пикабу.