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

Не так давно один украинский сервис онлайн-оплаты — Plategka.com — запустил функцию: создание ссылки с уникальным адресом и QR-кодом для получения перевода на карту.

Как только я захотел проверить, как работает новый сервис, я увидел ту же ошибку, которую допустили Portmone: по ссылке указывается полный номер карты. Перебирая ссылки, можно собрать номера карт. "Изначально мы думали над сокрытием номера карты, но в этом вопросе есть свои за и против, поэтому на первом этапе, дабы у Плательщика была возможность убедиться в верности уже введенных данных, решили его оставить", — пишут они пользователю.

image

Но факт наличия полного номера карты усугубляется тем, что для удобства плательщика указывается фамилия и имя получателя.

Итого: можно собрать полные номера + ФИО владельцев карт (я указал просто первые буквы латинского алфавита).

Об этой оплошности я сразу сообщил в компанию, они исправили отображение полного номера карты достаточно быстро и даже отблагодарили меня суммой в… 200 гривен ($8,5). Что ж…

Через пару дней, найдя свободное время, я зашёл на сайт ещё раз. А, так как первоначально при регистрации я указывал в полях «фамилия» и «имя» не совсем корректные данные, в этот раз решил посмотреть, возможно ли указать в этих полях два слова.

image
(телефонный номер не мой)


Два слова указать удалось.

image


Удалось указать и больше.

image


Получилось следующее:

image

А что, если добавить перенос строки < br > — забыл я о том, что это платёжный сервис и такой код не должен выполняться.
Однако разработчики также забыли это учесть — система приняла и «правильно» отобразила и перенос строки, и изменение цвета шрифта:

image

С такой формой мошенники могут долго собирать деньги с доверчивых пользователей. Особенно если задать психологически правильный текст. Кстати, сервис даёт возможность «забронировать» адрес ссылки. Естественно, я попробовал и создал ссылки вида:

https://www.plategka.com/gateway/pay2me/admin/
https://www.plategka.com/gateway/pay2me/login/
https://www.plategka.com/gateway/pay2me/test/

и другие.

Спойлер
Сейчас мои ссылки с описанием «Аккаунт владельца ссылки заблокирован» неактивны, но это не из-за действий «Платёжки», а потому что я во время проверки удалил один аккаунт и создал другой, а система не даёт возможность создать новому пользователю ссылку с освободившимся словом. Т.е. старую ссылку удалить/изменить нельзя, новую создать — тоже.

Ну и я не мог не попробовать вставить <script>alert()</script> в какое-либо поле.

image

И, к сожалению сервиса и моему счастью, код выполнился:

image

Мда, HTML-кодом дело не ограничилось, тут же и XSS.

Сообщение в компанию я отправил, указав, что эти ошибки серьёзнее, чем предыдущие. Меня поблагодарили и я получил вознаграждение. Вознаграждение, внимание, в размере… снова 200 (!) гривен!

Понимаю, что не во всех компаниях допускаются выплаты за найденные уязвимости, но
восемь с половиной долларов за XSS?

Комментарии (15)


  1. Wedmer
    28.10.2015 09:05
    +7

    Им повезло, что вы не такой как хакер из известного анекдота про солонки.


    1. MaximChistov
      28.10.2015 09:12
      +9

      На случай, если кто-то не читал :)

      Хакер в столовой
      автор: Журнал «Хакер»

      Дек 16, 2006

      День первый
      Хакер приходит в общественную столовую и с возмущением обнаруживает, что солонку на столе может открутить кто попало и насыпать туда что угодно. Хакер приходит домой и пишет гневное письмо директору столовой: «Я, meG@Duc, обнаружил уязвимость солонки в Вашей столовой. Злоумышленник может вскрыть солонку и насыпать туда яду! Примите меры срочно!»

      День второй
      Директор среди прочих деловых писем, запросов о поставках еды и курьерских уведомлений получает письмо, и пожимает плечами: «Кому этот бред только в голову пришёл?»

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

      День 96-ой
      Директор покупает специально спроектированные солонки с кодовым замком. Посетители столовой чувствуют, что они в этой жизни чего-то не понимают.

      День 97-ой
      Хакер обнаруживает, что дырки в солонках пропускают соль в обе стороны. И не только соль, а вообще всё, что угодно. Он пишет возмущенное письмо директору и ссыт во все солонки столовой. Триста человек перестают посещать эту столовую вообще, тридцать попадают в больницы с отравлением. Хакер вдогонку посылает директору смс-ку «Ну как вам?». Директора тем временем три месяца таскают по судам и дают год условно.

      День 188-ой
      Директор столовой клянется в жизни больше не работать ни в одной столовой, а тихо-мирно грузить лес в Сибири. Инженеры работают над новой солонкой с односторонним клапаном. Официантки тем временем изымают все старые солонки и раздают соль вручную.

      День 190-ый
      Хакер тырит солонку из столовой и изучает дома её устройство. Пишет гневное письмо директору: «Я, meG@Duc, стырил солонку и нахожу этот факт возмутительным! Любой может стырить солонку из Вашей столовой!» До этого непьющий директор читает письмо, идет домой и выпивает водки.

      День 193-ый
      Хакер обнаруживает, что все солонки в столовой прибиты цепями к столам. Он приезжает на очередной хакерский СПРЫГ и докладывает о своих успехах, получая там заслуженную награду за защиту интересов общества и потребителя. К счастью, директор ничего про это не знает и не сопьется раньше времени.

      День 194-ый
      В рамках дьявольски гениально продуманной операции хакеры всем СПРЫГом вламываются в столовую и высыпают соль из всех солонок себе в карманы. Хакер meG@Duc пишет
      возмущенное письмо директору, намекая на то, что никакой заботы о посетителях в столовой нет и любой гад может лишить честных людей соли в одно мгновение. Дозатор соли с авторизацией необходим просто позарез.

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

      День 200-ый
      Посетители столовой с ужасом находят, что, чтобы насыпать соли, они должны подойти к официанту, предьявить паспорт, получить специальный 8-значный одноразовый код к солонке. Для получения перца процедуру следует повторить.


  1. greabock
    28.10.2015 09:37
    +11

    Ну что тут скажешь? Школьники с fl.ru сдали проект в срок


  1. pewpew
    28.10.2015 10:08
    +22

    отблагодарили меня суммой в… 200 гривен ($8,5). Что ж…

    А что вы хотели от компании с гордым названием «Платегка»?


    1. samodum
      28.10.2015 16:57
      +4

      А в белорусских рублях это было бы 150000!


  1. alexpp
    28.10.2015 10:46

    Так что в итоге ваших обращений — они пофиксили уязвимость?


  1. Carcharodon
    28.10.2015 12:11
    +1

    Странно, что так мало заплатили. За утечку данных о держателях карт штрафы и выплаты намного выше :)


  1. Snowly
    28.10.2015 13:00
    +9

    отблагодарили меня суммой в… 200 гривен ($8,5). Что ж…
    Если для вас была важна сумма вознаграждения, то вы не туда сообщили о уязвимости :-)


  1. Judgin
    28.10.2015 13:35
    +21

    Интересно, Валентину Аверину из компании SYSNET Global Solutions не стыдно за проведенный PCI DSS?


    1. Milfgard
      28.10.2015 21:18
      +17

      Вот так Judgin восемь лет на Хабре молчал-молчал, молчал-молчал, а потом пришёл и первым же комментарием сломал человеку карьеру. Headshot!


      1. Judgin
        29.10.2015 14:07

        Да, я злой, терпеливый и молчаливый бот. До встречи через 8 лет=)


    1. o_jah
      29.10.2015 18:28

      Стыдно должно быть тем, кто делал тест на проникновение в рамках PCI DSS и отчет писал.


  1. ComodoHacker
    29.10.2015 04:40

    восемь с половиной долларов за XSS?

    За то, чтобы вы успокоились, не писали статью и не проверяли потом статус.
    Вероятно это работает, раз так делают. А они зато могут ставить этим багам низкий приоритет.


  1. gospodinmir
    29.10.2015 11:18
    +1

    Сумма конечно невелика, но ведь с тем же успехом — денег могли вообще не заплатить. Вы же занимаетесь этим на добровольных началах, соответственно такой исход не должен удивлять, разве нет?


    1. foxin
      29.10.2015 11:53
      +2

      Как уже написали выше, штрафы за такое — достаточно велики. И имхо нормально — это заплатить нормальную сумму (фактически за молчание) либо сразу предложить контракт на проведение аудита. Потому что сейчас автор может анонимно выложить в паблик слитую инфу по картам-именам и подать жалобу на сервис за слитую инфу.