Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —

Почему apple pay безопаснее обычной карты

Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —

Apple Pay vs обычная бесконтактная карта

  • Apple Pay требует авторизацию (отпечаток или пароль) на каждую проведенную транзакцию. Обычная карта не позволяет управлять количеством подписанных транзакций при поднесении к POS-терминалу. В теории, «злой» терминал с модифицированной прошивкой может провести одну транзакцию, а пока клиент держит карту возле считывателя, запросить несколько подписаний, но не проводить их сразу, а провести позже, когда клиент уйдет. С Apple Pay такое невозможно, после проведения транзакции пользователь видит значок успешно выполненной операции и приложение закрывается, новый запрос потребует повторный ввод отпечатка пальца.
  • Не позволяет считывать данные до авторизации — когда телефон с Apple Pay попадает в поле действия считывателя (13,56 МГц), пользователю предлагается авторизоваться, и только после успешной авторизации телефон начинает обнаруживаться как бесконтактная карта. До этого момента считыватель не видит ничего. Именно поэтому данные с Apple Pay нельзя считать незаметно из кармана, в отличие от обычной карты.
  • Нельзя использовать перехваченные данные для оплаты в интернете — обычная карта может быть использована для операций типа Card not present (CNP), то есть для оплаты в интернете, по телефону и т.д. Данные из виртуальной карты Apple Pay нельзя использовать подобным образом.
  • Не раскрывает данные владельца — обычные бесконтактные карты могут передавать имя владельца (Cardholder name) и историю последних покупок. По номеру карты, в некоторых случаях, можно установить ФИО владельца. С Apple Pay ничего подобного сделать нельзя.

14443-a select

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

В терминологии стандарта ISO-14443:
PCD (proximity coupling device) — название считывателя, в нашем случае это POS-терминал
PICC (proximity integrated circuit card) — карта, в нашем случае эту роль выполняет телефон

Важное отличие обычной платежной карты от 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)

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

0x52

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

0x04 0x00

. Ответ 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-терминалы отказываются продолжать, если на этом этапе выявлены коллизии, то есть присутствие нескольких карт одновременно.

Длина UID может быть 4, 7 или 10 байт. У всех банковских карт, что я встречал, в том числе и в Apple Pay, UID был равен 4 байтам. Интересно, что Apple Pay генерирует разный UID на каждое считывание, в отличие от физических карт, где UID обычно постоянный. Уверен, что это сделано для того, чтобы айфоны не использовали в качестве примитивных карт доступа, так как системы СКУД на основе UID до сих пор очень популярны.

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

0x50 0x00

HALT

0x57 0xcd

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-меток, билетов на общественный транспорт, и т.д.

Как пользоваться бесконтактной картой

Платить в торговых точках несложно. Прежде чем подносить банковское средство к терминалу, убедитесь, что он поддерживает NFC. На считывающем устройстве должен быть знак бесконтактной оплаты — логотип PayPass или PayWave.

Потом происходит следующее:

  1. Покупатель оповещает о желании расплатиться бесконтактной картой.
  2. Кассир вводит соответствующую сумму в терминал.
  3. Покупатель подносит карточку к считывающему устройству. Предварительно желательно проверить, правильная ли сумма высвечивается в терминале.
  4. После звукового сигнала, оповещающего об успешной оплате, платежное средство можно убирать.

Имейте в виду! Если сумма покупки свыше 1 тысячи рублей, то дополнительно (в целях безопасности) потребуется ввести ПИН-код. Иногда лимит меньше или больше. Его устанавливает банк или сам пользователь.

Как это работает?

Для начала рассмотрим базовые понятия: любые движения денег с использованием платежных карт возможны только через посредников, подключенных к платежной системе, например VISA или MasterCard. В отличие от переводов между физическими лицами, списание денег с карты доступно только юридическому лицу (мерчанту), имеющему договор эквайринга с банком.

Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —
Этапы транзакции при оплате через POS-терминал

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

  1. Покупатель прикладывает/проводит/вставляет карту в POS-терминал;
  2. POS-терминал по интернету передает данные в банк-эквайер;
  3. Банк-эквайер через международную платежную систему (МПС) обращается в банк-эмитент и запрашивает, может ли конкретный держатель карты оплатить покупку;
  4. Банк-эмитент подтверждает или отклоняет покупку, после чего печатается слип (второй чек).

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

Продавец (Merchant) — лицо или организация, предоставляющая товары или услуги

Банк-эквайер (Acquiring bank) — банк, который предоставляет продавцу услуги приема платежей через банковские карты. В этом банке, обычно, находится расчетный счет продавца, куда зачисляются списанные с карты деньги.

Банк-эмитент (Issuing bank) — банк, выпустивший карту. В нем находится счет владельца карты, у которого списываются деньги.

Международная платежная система (МПС) — международная система-посредник между банками по всему миру, позволяющая банкам производить расчеты между собой без заключения договора с каждым банком по отдельности. Все банки, подключенные к МПС, соглашаются работать по одним правилам, что значительно упрощает взаимодействие. Например, Visa, MasterCard, UnionPay, American Express, МИР (нет, МИР не работает заграницей).

Владелец карты (Cardholder) — человек, заключивший с банком-эмитентом договор обслуживания карты.

Может ли мобильный терминал заменить кассу

В магазине есть техника для эквайринга, которая обрабатывает безналичные платежи и выдает чеки. Кажется, что ККМ не нужна. Но с 2020 года по закону 54 ФЗ большинство предпринимателей обязаны использовать онлайн-кассу. В ней стоит фискальный накопитель, который собирает информацию о продажах и передает в налоговую. Поэтому техника для эквайринга не заменит онлайн-кассу.

Чтобы принимать безналичные платежи и соблюдать 54 ФЗ, предприниматели покупают онлайн-кассу и подключают к ней аппарат для оплаты картами. Это можно сделать по-разному: через разъем в кассе, по блютусу или через кассовый компьютер — способ зависит от модели кассы и терминала.

Есть в онлайн-кассу встроен терминал, она принимает безналичные платежи и выдает фискальные чеки. Стоит 40 000 рублей и экономит место на прилавке: магазину не нужно покупать отдельно два аппарата и выбирать устройство, которое интегрируется с ККМ.

Как работают кассы и эквайринг вместе:

  1. покупатель заказывает кофе и хочет расплатиться карточкой;
  2. кассир выбирает нужный товар на кассовом аппарате и вводит сумму;
  3. онлайн-касса передает терминалу сколько стоит покупка;
  4. покупатель вставляет карту, вводит пин-код или прикладывает к экрану;
  5. продавец отдает клиенту кассовый и фискальный чек.

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

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


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

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

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

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

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

Популярные мифы об apple pay

  • Карта копируется в телефон
    Это не так, в микропроцессорной карте содержится защищенная область памяти с криптографической информацией, которая после выпуска карты не может быть извлечена. Из-за этого чипованную карту нельзя скопировать, никак, вообще. Справедливости ради нужно сказать, что подобные атаки возможны, но стоимость их превышает суммарное количество денег, которые потратят за всю жизнь большинство читателей этой статьи.
  • Телефон каждый раз подключается к интернету во время оплаты
    Google Pay/Apple Pay не подключаются к интернету во время оплаты через POS-терминал. Вся нужная информация хранится локально в телефоне.
  • На каждую оплату генерируется новый номер карты (PAN)
    Так может показаться, если читать пресс-релизы Apple о технологии Apple Pay. Но это ошибочное трактование понятия токена. На самом деле, реквизиты виртуальной карты остаются неизменными достаточно долго, вы можете это проверить по последним цифрам номера карты в слипе (банковском чеке) при оплате покупок.
  • При оплате через Apple Pay/Google Pay взымается дополнительная комиссия
    Это не так, вы заплатите ровно столько, сколько указано на ценнике, и согласно условиям вашего договора с банком-эмитентом, чью карту вы привязали.
  • Деньги могут списаться два раза
    Этот миф касается не только Google Pay/Apple Pay, но и обычных банковских карт. Полагаю, что он появился из-за систем оплаты общественного транспорта, в которых терминал списывает деньги с проездного билета каждый раз при поднесении, так что можно списать средства два или более раз, если неаккуратно поднести карту. В случае с POS-терминалами этого риска не существует, так как терминал прекращает обмен с картой, как только получил нужные данные.

Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —
Связывание физической карты с «токеном» в телефоне

Системы, подобные Apple Pay, работают на основе EMV Payment Tokenisation Specification. Процедура связывания физической карты и телефона с Apple Pay не описана публично, поэтому разберем процесс на основе известных данных:

  1. Поставщик (Google, Apple, Samsung) получает информацию о карте;
  2. Через МПС поставщик запрашивает, поддерживает ли данная карта (данный банк-эмитент) работу с EMV Tokenisation;
  3. На стороне МПС генерируется виртуальная карта (токен), который загружается в защищенное хранилище в телефоне. Мне неизвестно, где именно генерируется приватный ключ от виртуальной карты, передается ли он по интернету или генерируется локально на телефоне, в данном случае это не имеет значения.
  4. В телефоне появляется сгенерированная виртуальная карта-токен, операции по которой банк-эмитент интерпретирует как операции по первой физической карте. В случае блокировки физической карты, токен тоже блокируется.

Apple Pay позволяет считать реквизиты виртуальной карты. PAN номер и expire date отличаются от привязанной карты российского Альфа-Банка. По BIN виртуальной карты (480099) определяется MBNA AMERICA BANK.

При оплате телефоном, POS-терминал видит обычную карту VISA или MasterCard, и общается с ней точно так же, как и с физической картой. Виртуальная карта-токен содержит все атрибуты обычной карты: PAN-номер, срок действия и прочее. При этом номер виртуальной карты и срок действия отличаются от привязанной оригинальной карты.

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

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

одну единственную карту

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

Распухший от карт кошелек


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

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

Попытка считать несколько карт в кошельке. POS-терминал возвращает ошибку.

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

Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —

Мошенник, вооруженный POS-терминалом

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

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

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

Терминалы для бесконтактной оплаты проезда появились на всех станциях метро

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

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

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

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

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

Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —

Бесконтактным способом также можно оплатить проезд на Московском центральном кольце (МЦК). За январь и февраль этого года пассажиры метро и МЦК воспользовались им более 250 тысячраз. Это больше, чем за девять месяцев прошлого года. А 1 марта был поставлен рекорд — более 10 тысяч бесконтактных оплат за сутки.

Стоимость одной поездки в городском транспорте при бесконтактном способе оплаты составляет 42 рубля. Помимо этого, за проезд можно расплатиться картой «Тройка», проездными билетами «Единый» на одну или две поездки, а также картами москвича.

«Московское метро — лидер среди метрополитенов мира по количеству способов оплаты проезда. По результатам социологического исследования, проведенного Центром мониторинга общественного мнения при Правительстве Москвы в апреле 2020 года, 70 процентов пассажиров довольны удобством оплаты проезда на станциях подземки и МЦК», — отметил Максим Ликсутов.

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

Оплатить проезд с помощью банковской карты или смартфона можно будет также на турникетах Московских центральных диаметров (МЦД). Первые два диаметра, МЦД-1 Одинцово — Лобня и МЦД-2 Нахабино — Подольск, планируется открыть для пассажиров в конце 2020 — начале 2020 года. Всего прорабатываются маршруты пяти диаметров. Работать МЦД будет с 05:30 до 01:00. Интервалы движения составов не будут превышать пяти-шести минут в часы пик.

Мобильный терминал для оплаты банковскими картами для физических лиц и переносной mPOS терминал: как работают и различия —

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

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