Не надо касаться: бесконтактные карты от Сбербанка

Проблема: Несколько карт в кошельке

Это важный момент в данном сценарии атаки, потому что в реальности почти никто не носит

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

Конкретно мой терминал Igenico iWL250 при обнаружении в поле действия более одной карты с SAK, обозначающим поддержку протокола 14443-4, возвращает ошибку: «предъявите одну карту».

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

Чтение одной конкретной карты из нескольких — непростая задача на физическом уровне. Для решения этой проблемы существует механизм антиколлизий. Он позволяет выбрать одну карту, если был получен ответ от нескольких карт сразу. Это самый первый этап установления связи с бесконтактной картой в протоколе ISO-14443A.

Не надо касаться: бесконтактные карты от Сбербанка

Так, например, используемая в московском общественном транспорте карта «Тройка» (стандарта Mifare) имеет значение SAK=0x08 (b00001000), в котором шестой бит равен нулю. В то время как у всех банковских карт в ответах SAK шестой бит равен 1, что означает поддержку протокола ISO 14443-4.

Поэтому все, что может сделать терминал при обнаружении нескольких карт одновременно — исключить карты, не поддерживающие ISO 14443-4, и выбрать одну из похожих на банковскую. Поддержка протокола ISO 14443-4, кстати, не гарантирует, что эта карта будет банковской, однако вероятнее всего, в кошельке обычного человека не будет карт другого типа, поддерживающих ISO 14443-4.

Из личного опыта: несмотря на наличие протокола антиколлизий, при наличии в кошельке хотя бы трех бесконтактных карт, считать успешно нужную карту КРАЙНЕ тяжело. Большинство попыток заканчивается ошибками чтения. Тем более сложно это сделать на бегу, прижимаясь к чужим карманам и сумкам.

Однако мы будем считать, что нашему мошеннику очень везёт, и это ограничение его не беспокоит.

Как узнать бесконтактную карту и где ею пользоваться

Бесконтактные карты Сбербанка выглядят как обыкновенные Visa или MasterCard, отличаясь от них лишь специальным значком, расположенным рядом с логотипом. Это пиктограмма, изображающая расходящиеся волны (похож на значок Wi-fi).

презентация по Бесконтактной оплате картой

Оплачивать покупки бесконтактной картой можно в каждом терминале, который помечен таким же символом. С помощью MasterCard PayPass и Visa payWave можно рассчитываться в одно касание за товары и услуги в сетевых супермаркетах и магазинах поменьше, в некоторых видах общественного транспорта, в заведениях общественного питания.

Функции бесконтактных карт ничем не отличаются от набора привычных дебетовых. Это:

  • списание и пополнение наличными и безналичным способом;
  • денежные переводы и перемещения средств с одного счета владельца на другой;
  • управление счетами с помощью сервисов «мобильный банк» и «личный кабинет онлайн».

Оффлайн vs Онлайн транзакции

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

Спецификации EMV допускают оффлайн-транзакции. В таком режиме списание происходит без онлайн-подтверждения со стороны банка-эмитента. Это работает, например, в общественном транспорте в Москве и Санкт-Петербурге. Чтобы не занимать очередь на входе в автобус, пока терминал выполнит онлайн-подтверждение, вас пропускают сразу, не проверяя, достаточно ли у вас денег на счету для оплаты проезда.

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

Лично мне не удалось получить POS-терминал, поддерживающий такую функцию, поэтому в сценарии с обычным «гражданским» POS-терминалом мы не будем рассматривать возможность оффлайн-списаний. Это ничего не меняет, кроме того, что атакующему потребуется наличие интернета на терминале, поэтому атака, например, в метро, значительно усложняется.

Существуют модели терминалов, поддерживающие WiFi, и в теории наш мошенник мог бы использовать WiFi в метро, предварительно позаботившись о покупке доступа без рекламы для MAC-адреса своего POS-терминала, чтобы не нужно было выполнять аутентификацию через captive portal, так как на POS-терминале это сделать нельзя.

Как работает банкомат

Компания стала активно осваивать и распространять технологию бесконтактной оплаты, теперь почти в каждом банкомате организации будет установлен специальный NFC модуль. На западе такие устройства стали применяться еще с 2003 года. Благодаря микрочипу NFC, происходит беспроводной обмен информацией на маленьком расстоянии.

Как узнать карту Visa PayWave и MasterCard PayPass

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

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

Чтобы определить, поддерживает ли банкомат такую функцию, достаточно взглянуть на него. При наличии модуля НФС на передней панели выведен считыватель, на котором изображен соответствующий логотип в виде волн и подпись PayPass или PayWave. Следует учитывать, что не все банковские карточки поддерживают такую бесконтактную технологию, на совместимых кредитках изображен тот же символ – точка, испускающая волны.

Воспользоваться новым способом могут:

  1. Владельцы совместимых банковских карточек.
  2. Потребители, у которых мобильное устройство оборудовано соответствующим модулем NFC. Сейчас все крупные производители стараются применять такие чипы в изготовлении смартфонов. Поэтому почти все современные модели могут осуществлять передачу бесконтактным способом, исключение составляют устаревшие телефоны.
  3. Обладатели специальных аксессуаров от Сбербанка – браслеты, кольца и брелоки, в корпус которых внедрены аналогичные передатчики.

Операция обмена информацией происходит буквально за несколько секунд. Между чипом RFID ,антенной на кредитке и считывателем на банкомате создается беспроводное соединение с маленьким радиусом действия.

Принцип действия бесконтактной карты прост, как все гениальное. Обыкновенная Виза дополняется специальным чипом, в который встроена радиоантенна (FRID). Информация о платеже обрабатывается терминалом, оборудованным для приема радиосигналов, и передается в банк.

Таким образом, в бесконтактных расчетах практически нет опасности потери денег: интернет-технологии неоднократно опробованы и работают годами, поэтому ошибки при списывании денежных средств исключены. Сам пластик реже взаимодействует с терминалом и меньше подвергается механическим нагрузкам, поэтому риск преждевременного размагничивания карточки существенно снижается.

Не надо касаться: бесконтактные карты от Сбербанка

В качестве меры безопасности хранения денежных средств на бесконтактной карте разработчиками установлен лимит быстрых списаний: если сумма единовременного платежа превышает отметку в 1000 рублей, владельцу придется ввести пин-код либо подписать чек (слип), предложенный продавцом.

Подсчитываем прибыль

В нашем сценарии себестоимость атаки была 100 000 рублей. Это значит, что для того, чтобы хотя бы вернуть вложения, нашему герою нужно выполнить минимум 100 транзакций по 1 тысяче рублей. Представим, что он был достаточно проворным и весь день бегал по городу, прижимаясь ко всем подряд, так, что к концу дня сделал 120 успешных списаний. Мы не будем учитывать комиссию эквайринга (в среднем 2%), комиссию на обналичивание (4-10%) и другие комиссии.

Может ли он успешно обналичить деньги, используя карту, привязанную к расчетному счету?

В реальности не все так просто. Зачисление денег на счет мошенника произойдет только через несколько дней! За это время, наш мошенник должен надеяться, что никто из ста двадцати жертв не оспорит транзакцию, что крайне маловероятно. Поэтому в реальности, счет мошенника будет заблокирован еще до зачисления на него денег.

Как отключить

Отключить бесконтактную оплату с карты Сбербанка можно двумя несложными способами.

Первый ‒ удалить с мобильного устройства само приложение. Без него покупать с помощью телефона нельзя.

Второй – попросту выключить функцию беспроводной связи малого радиуса на своем аппарате. Для этого нужно открыть «Настройки», найти раздел «беспроводные сети» и переместить бегунок, отключающий NFC-модуль. Почему этот способ предпочтительнее? Потому что, если владелец пожелает вновь пользоваться бесконтактными оплатами, ему придется заново скачивать приложение и привязывать номер карты к мобильному устройству. А включить беспроводную связь можно за пару кликов.

Не надо касаться: бесконтактные карты от Сбербанка

Хотя бесконтактные платежи Сбербанка привлекают неоспоримыми преимуществами, они имеют и ряд недостатков. К минусам относятся:

  • недостаточное распространение терминалов, способных принимать радиосигнал карты (в основном, это касается малых населенных пунктов);
  • вероятность лишиться денежных средств до 1000 рублей при утере карты;
  • возможность списания злоумышленниками денег с карты с помощью специальных RFID-ридеров на близком расстоянии.

Приятной новостью для бюджетников станет известие о том, что карта «Мир», которая обслуживается с помощью отечественных систем, тоже, вслед за остальными, переходит на бесконтактные платежи Сбербанка. Это нововведение удобно, в том числе, для пенсионеров, так как избавляет пожилых людей от необходимости запоминать и вводить пин-код на мелких кнопках терминалов при оплате ежедневных покупок.

Вывод

Себестоимость атаки в нашем сценарии — 100 000р. В действительности, она будет в несколько раз выше, поэтому мошеннику потребуется намного больше усилий для того, чтобы получить прибыль.

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

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

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

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

При прочих равных, Apple Pay будет безопаснее обычной пластиковой карты. Для большей безопасности можно заблокировать CNP-операции (оплата в интернете) по основной бесконтактной карте, и завести вторую карту только для оплаты в интернете.

Сценарий 1 — обычный POS-терминал

Не надо касаться: бесконтактные карты от Сбербанка

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

Условия следующие:

  • У мошенника полностью рабочий обыкновенный POS-терминал, подключенный к банку-эквайеру, такой же, как в магазинах и у курьеров. Прошивка терминала не модифицирована. В нашем случае — Ingenico iWL250. Это портативный POS-терминал с GPRS модемом, который поддерживает бесконтактную оплату, работает от батарейки и полностью мобилен.
  • Мошенник не использует дополнительные технические средства, только POS-терминал
  • Списанные средства зачисляются на расчетный счет мошенника, по всем правилам банковских систем

Юридическое лицо

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

Предложения о продаже готовых компаний от мошенников (кликабельно)

Цена компании на черном рынке с расчетным счетом колеблется от 20 до 300 тысяч рублей. Мне удалось найти несколько предложений ООО с POS-терминалом от 200 тысяч рублей. Такие компании оформлены на подставных лиц, и покупатель получает весь пакет документов, вместе с «кеш-картой» — это банковская карта, привязанная к расчетному счету подставной компании. С такой картой мошенник может обналичивать деньги в банкомате.

Фото 2

Допустим, наш мошенник работает на кассе в магазине или курьером с мобильным POS-терминалом. В таком случае, у него появляется возможность вылавливать данные карты, которых, в некотором случае, может быть достаточно для оплаты в интернете.

Для начала разберемся, как именно выглядит бесконтактная транзакция, и какими данными обменивается карта с POS-терминалом. Так как нам лень читать тысячи страниц документации EMV Contactless Specifications , мы просто перехватим обмен на физическом уровне с помощью сниффера HydraNFC.

Есть некоторая разница между EMV-спецификацией для MasterCard PayPass и Visa payWave. Это разница в формате подписи и некоторых данных. Но для нас это несущественно.

Разбор протокола EMV

Сырые данные, полученные со сниффера (раскрыть спойлер)

Не надо касаться: бесконтактные карты от Сбербанка
Кассовый чек и слип от транзакции (кликабельно)

R (READER) — POS-терминал
T (TAG) — карта (в нашем случае телефон)
R{amp}gt;{amp}gt; 52
R{amp}gt;{amp}gt; 52
R{amp}gt;{amp}gt; 52
R{amp}gt;{amp}gt; 52
R{amp}gt;{amp}gt; 52
R{amp}gt;{amp}gt; 52
R{amp}gt;{amp}gt; 52
T{amp}lt;{amp}lt; 04 00
R{amp}gt;{amp}gt; 93 20
T{amp}lt;{amp}lt; 08 fe e4 ec fe
R{amp}gt;{amp}gt; 93 70 08 fe e4 ec fe dd 6e
T{amp}lt;{amp}lt; 20 fc 70
R{amp}gt;{amp}gt; 50 00 57 cd
R{amp}gt;{amp}gt; 26
R{amp}gt;{amp}gt; 52
T{amp}lt;{amp}lt; 04 00
R{amp}gt;{amp}gt; 93 70 08 fe e4 ec fe dd 6e
T{amp}lt;{amp}lt; 20 fc 70
R{amp}gt;{amp}gt; e0 80 31 73
T{amp}lt;{amp}lt; 05 78 80 70 02 a5 46
R{amp}gt;{amp}gt; 02 00 a4 04 00 0e 32 50 41 59 2e 53 59 53 2e 44 44 46 30 31 00 e0 42
T{amp}lt;{amp}lt; 02 6f 23 84 0e 32 50 41 59 2e 53 59 53 2e 44 44 46 30 31 a5 11 bf 0c 0e 61 0c 4f 07 a0 00 00 00 03 10 10 87 01 01 90 00 4b b3
R{amp}gt;{amp}gt; 03 00 a4 04 00 07 a0 00 00 00 03 10 10 00 bc 41
T{amp}lt;{amp}lt; 03 6f 31 84 07 a0 00 00 00 03 10 10 a5 26 9f 38 18 9f 66 04 9f 02 06 9f 03 06 9f 1a 02 95 05 5f 2a 02 9a 03 9c 01 9f 37 04 bf 0c 08 9f 5a 05 60 08 40 06 43 90 00 1d 66
R{amp}gt;{amp}gt; 02 80 a8 00 00 23 83 21 36 a0 40 00 00 00 00 01 42 98 00 00 00 00 00 00 06 43 00 00 00 00 00 06 43 18 09 18 00 e0 11 01 03 00 f9 14
T{amp}lt;{amp}lt; 02 77 62 82 02 00 40 94 04 18 01 01 00 9f 36 02 02 06 9f 26 08 d6 f5 6b 8a be d7 8f 23 9f 10 20 1f 4a ff 32 a0 00 00 00 00 10 03 02 73 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9f 6c 02 00 80 57 13 48 00 99 72 50 51 17 56 d2 31 22 01 00 00 05 20 99 99 5f 9f 6e 04 23 88 00 00 9f 27 01 80 90 00 af c8
R{amp}gt;{amp}gt; 03 00 b2 01 1c 00 c9 05
T{amp}lt;{amp}lt; 03 70 37 5f 28 02 06 43 9f 07 02 c0 00 9f 19 06 04 00 10 03 02 73 5f 34 01 00 9f 24 1d 56 30 30 31 30 30 31 34 36 31 38 30 34 30 31 37 37 31 30 31 33 39 36 31 36 37 36 32 35 90 00 a7 7b

Разберем каждую строку строку из перехваченного дампа в отдельности.

R{amp}gt;{amp}gt; — данные, переданные POS-терминалом T{amp}gt;{amp}gt; — данные, переданные картой (в нашем случае телефон с Apple Pay)

14443-A Select

В начале обмена терминал устанавливает соединение с картой на канальном уровне. Для тех, кто знаком с сетями и моделью OSI, будет удобно представить это в качестве уровня L2, а UID (Unique Identifier) карты как MAC-адрес узла.

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

R{amp}gt;{amp}gt; 52 // WUPA (wake up)
R{amp}gt;{amp}gt; 52 // WUPA
R{amp}gt;{amp}gt; 52 // WUPA
R{amp}gt;{amp}gt; 52 // WUPA
R{amp}gt;{amp}gt; 52 // WUPA
R{amp}gt;{amp}gt; 52 // WUPA
R{amp}gt;{amp}gt; 52 // WUPA
T{amp}lt;{amp}lt; 04 00 // ATQA (Answer To Request type A) 
R{amp}gt;{amp}gt; 93 20 // Select cascade 1 (Anti Collision CL1 SEL)
T{amp}lt;{amp}lt; 08 fe e4 ec fe // UID (4 bytes)   BCC (Bit Count Check)
R{amp}gt;{amp}gt; 93 70 08 fe e4 ec fe dd 6e // SEL (select tag 0x9370)   UID   CRC16
T{amp}lt;{amp}lt; 20 fc 70  // SAK (Select Acknowledge 0x20)   CRC16 
R{amp}gt;{amp}gt; 50 00 57 cd // HALT (Disable communocaion 0x5000)   CRC16
R{amp}gt;{amp}gt; 26 // REQA
R{amp}gt;{amp}gt; 52 // WUPA
T{amp}lt;{amp}lt; 04 00 // ATQA
R{amp}gt;{amp}gt; 93 70 08 fe e4 ec fe dd 6e // SELECT
T{amp}lt;{amp}lt; 20 fc 70 // SAK
R{amp}gt;{amp}gt; e0 80 31 73 // RATS (Request Answer to Select 0xE080)   CRC16
T{amp}lt;{amp}lt; 05 78 80 70 02 a5 46 // ATS (Answer to select response)

Терминал постоянно передает команду

Wake-up (WUPA), и как только в поле действия появляется карта, она отвечает командой Answer To Request type A (ATQA), в нашем случае это

Фото 3

. Ответ ATQA может различаться в зависимости от производителей чипа.

Получив ответ ATQA, терминал начинает процедуру выявления коллизий, чтобы определить, есть ли в поле действия более одной карты. Команда 0x93 0x20 Select cascade level 1 (SEL CL1) запрашивает у всех карт в поле действия сообщить первую часть своих идентификаторов UID.

Карта отвечает 0x08 0xFE 0xE4 0xEC 0xFE, первые четыре байта — UID виртуальной карты Apple Pay и контрольная сумма 0xFE Bit Count Check (BCC) в конце.

Получив идентификаторы карт, считыватель обращается к конкретной карте командой 0x93 0x70 (SELECT). За командой следует UID карты 0x08 0xfe 0xe4 0xec 0xfe BCC 0xdd 0x6e CRC16.

Карта отвечает 0x20 Select Acknowledge (SAK) 0xfc 0x70 CRC16.

Если на этом шаге получено несколько ответов SAK, ридер может уменьшить длину UID в команде SELECT, пока не ответит единственная карта. Однако, как показано выше, некоторые POS-терминалы отказываются продолжать, если на этом этапе выявлены коллизии, то есть присутствие нескольких карт одновременно.

Ридер посылает команду

Фото 4

HALT

CRC16. Это команда завершения связи.

Дальше процедура повторяется заново, ридер снова пробуждает карту (WUPA), но уже без проверки коллизий, сразу выполняется SELECT. Зачем так сделано — не знаю, возможно, это какой-то более надежный способ определения коллизий.

Во второй раз ридер уже посылает команду 0xE0 0x80 Request Answer to Select (RATS) 0x31 0x73 CRC16.

Карта отвечает 0x05 0x78 0x80 0x70 0x02 Answer to select response (ATS) 0xA5 0x46 CRC16.

Answer to select — ответ аналогичный Answer To Reset (ATR) для контактных карт. В нем содержится информация о максимальном размере кадра и параметрах канального уровня.

На этом этапе «канальный» уровень завершен, далее начинается обмен на более высокоуровневом протоколе, в зависимости от приложения, содержащегося на карте. Операция SELECT одинакова для всех бесконтактных карт стандарта ISO 14443A, в том числе NFC-меток, билетов на общественный транспорт, и т.д.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *