[Из песочницы] Утечка пользовательских данных в QIWI

c2c326bce0384c9f9f2766b8d2848c36.png

Вкратце, существует возможность собрать огромное количество данных о платежах по выставленным счетам, произведённых в системе. Эти данные включают в себя назначение платежа, описание, сумму. И самое главное: номер мобильного телефона плательщика, который, в некоторых случаях, по совместительству, является логином в кошельке. В описаниях же обычно доступна и иная информация, которая не должна быть достоянием общественности, как и всё ранее упомянутое.
Выждав, как полагается, достаточное количество времени для возможности исправления, решил представить общественности найденную мной утечку конфиденциальных данных. Исследование проводилось в рамках багбаунти программы. Этот отчёт, которому на данный момент более полугода, отмечен как дубликат, поэтому, скорее всего, проблема остаётся неисправленной ещё дольше.

Проверял всё описанное ниже со своим кошельком, информация, к сожалению, совпадает. Данные доступны любому желающему, для эксплуатации нет никаких зависимостей, осуществляется простым перебором параметра order.

Подтвердим описанное выше на примере. Пройдя по ссылке https://w.qiwi.com/order/external/main.action? order=524928171&phone=12345, получим ответ:

739288f8739e4b7f92cd67ba4720e318.png

А заглянув в HTML код, найдём телефонный номер пользователя, совершившего данный платеж.

cf855c1e128c4bad81e0de37e7c09494.png

Ещё один пример, с отменённым статусом.

aa29f9855c32449384721942fa7dc89b.png

HTML

ce0aa64674d04d69b2e9db04a8f9f125.png

А здесь

71cc2faf91804838afcad1eadcbbf3c9.png

помимо упомянутых данных, имеется чей-то email, который, кстати, не гуглится. Этот случай, как нельзя кстати, подходит под ответ на вопрос, почему порой на приватную почту или мобильный сыпется спам.

Идём дальше.

ae1a1b5aef184e6ea86bf2c37512ee1b.png

Почта, так же, не светилась. Извлекаем телефонный номер.

993a5a0d61464758b6311ed2975ef409.png

И тут же, подтверждаем валидность этого номера и почты заодно.

67a48a7b58b84c8ebff6b1544812e395.png

Let’s Google it.

6acb77e6ca304c5eaf0c4fa7b3d3731e.png

Переходим по первой ссылке.

48bf6afdc133477e88fb3d31993c33fa.png

А вот и получатель платежа собственной персоной.

9f936bbc7c6d462da61e274ebd5fd879.png

Казалось бы, что тут такого, человек ведёт коммерческую деятельность и не скрывает своих контактных данных. Всё так, если не учитывать момента с почтовым адресом, который Константин нигде не светил и наверняка не хочет. Долго замазывал скрины и не публиковал ссылку для безопасности и спокойствия Костика.

Последний пример лишь один из векторов безобидного использования этих данных, помимо рекламных рассылок которые будут бить точно в цель, используя другую информацию полученную этим методом.

Не знаю точно, попадают ли в эту утечку платежи сделанные через терминалы, но цифры внушительные. Диапазон, на момент отправки отчёта, лежал в приблизительном промежутке от 200000000 до 450000000. На данный момент цифра перевалила за 578417740 записей.

Меня, как ресёрчера, ничуть не удивляет этот «баг». Но как активного пользователя QIWI кошелька, просто вымораживает та скорость фикса, с которой её совершают сотрудники компании.

Надеюсь, с выходом данной публикации специалисты компании начнут работать шустрее, а данные пользователей будут в сохранности.

Всем добра и котиков кивиков.

a305f2e667bc4b5b86b182f43ede6bba.png

© Habrahabr.ru