QIWI: Небезопасная схема выдачи номера карты QVC (возможно, также QVV и QVP)

2015-09-05T10:03:55
ID H1:87586
Type hackerone
Reporter postboy
Modified 2019-03-20T10:27:46

Description

Здравствуйте!

Обнаружил в вашей системе ощутимую проблему безопасности, связанную с виртуальными кредитными картами QVC. Реально проэксплуатировать я её не могу, но кто-то другой вполне может использовать её в злонамеренных целях.

Я пользуюсь QVC не меньше года и знаю, что всё это время номера этих кредитных карт имеют вид 4890 + 12 других цифр. Раньше на сайте отображались первые 4 цифры номера карты (4890) и последние 4 цифры, средние же 8 приходили по СМС. Буквально пару дней назад у вас что-то поменялось, и вы стали для вновь выпущенных QVC стали отображать на сайте https://qiwi.com средние 8 цифр, а первые 4 цифры и последние 4 цифры стали присылать по СМС как секретные.

Проблема в том, что 4 первые цифры это уже очень долго 4890, и делать это секретом нерационально, они же общеизвестны! В сегодняшней схеме для подбора номера некоторой кредитной карты злоумышленником, который получил доступ к аккаунту пользователя на сайте https://qiwi.com, нужно подобрать лишь 4 цифры номера карты + CVV2, в то время как при предыдущей схеме приходилось бы подобрать до 8 цифр карты + CVV2!

Более того, при подборе последних 4 цифр на самом деле нужно подобрать лишь 3 цифры, ведь последняя, четвёртая, рассчитывается как контрольная сумма по формуле Луна (https://ru.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D0%9B%D1%83%D0%BD%D0%B0), что очень сильно ускоряет подбор!

Проблема серьёзно усугубляется тем, что, насколько я знаю, последние 4 цифры являются полу-публичной информацией, которая часто записывается на чеках и отображается на веб-сайтах, принимающих оплату карточками. Так что подбора может вообще не быть, если скомпрометирован также какой-нибудь ресурс, на котором платил пользователь, или имеется чек, оплаченный пользователем.

Итак, к сожалению текущая схема выдачи номера QVC не является безопасной. Подобная проблема может также иметься с QVV, а может даже и с QVP, я не имею возможности протестировать, к сожалению! Пожалуйста, исправьте её. Предыдущая схема была на порядок безопаснее.

С уважением, Иван