Три мифа о безопасности мобильных платежей / Хабр

Три мифа о безопасности мобильных платежей / Хабр NFC

Использование готовых меток для управления устройством

Одним из активных участников процесса внедрения NFC является компания Sony. В ее аппаратах предустановленна программа Smart Connect, поддерживающая работу с оригинальными метками Sony. При желании с использованием утилиты SmartTag Maker вы можете создать их самостоятельно из чистых заготовок.

Для работы системы используется формат NDEF URI с кодированием номера/цвета метки в текстовой ссылке. Всего система предусматривает до восьми меток, которые обозначены как «дом», «офис», «машина», «спальня», «слушать», «играть», «активности», «смотреть».

Вариант оригинальных меток Sony SmartTags

Сама программа Smart Connect работает не только с NFC-метками, но и с другими подключаемыми к телефону устройствами, включая гарнитуры, блок питания, устройства Bluetooth. Достаточно удобно, что штатные настройки уже неплохо соответствуют указанным выше сценариям. При этом пользователь может перепрограммировать все схемы; в каждой из них указывается набор из условия и действий.

Настройка работы с метками в Sony Smart Connect

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

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

В магазине Play Store есть несколько утилит для этого сценария, упомянем пару из них:

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

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

  • NFC Actions: возможность работы с облачным сервисом для хранения действий меток, запуск приложений, все традиционные для NDEF действия и несколько дополнительных (включение Wi-Fi, фонарика и т. п.);
  • NFC Profile: изменение некоторых параметров конфигурации устройства, включая состояние беспроводных интерфейсов, будильник, а также запуск программ;
  • NFC Smart Q: опции по настройке режимов телефона, запуску приложений, можно использовать несколько записей на одной метке, дополнительно создается короткая web-ссылка стандартного формата NDEF, которая позволяет на новом устройстве загрузить данную программу и использовать некоторые из опций;
  • NFC Task Launcher: кроме меток NFC может активировать настройки по подключению к Bluetooth или Wi-Fi, среди действий есть переключение режимов, интерфейсов, громкости и настроек экрана, публикации в социальных сетях, отправка e-mail и SMS, запуск приложений, открытие страниц в браузере, управление медиаплеером, настройка будильника, телефонный звонок.

Напомним, что в настоящий момент чтение метки осуществляется только при разблокированном аппарате. Так что сценарий «пришел домой, положил телефон на тумбочку — автоматически переключил профиль, отключил звонок и Bluetooth, настроил будильник» потребует от пользователя некоторых действий. Такое поведение все-таки немного ограничивает возможности программ.

Обходные пути

Первое, что приходит в голову — а можно ли добавить в info.plist не AID платежного апплета, а AID Card Manager’а (Card Manager — это группа сервисов внутри операционной системы чипа, управляющих картой, которые отвечают за администрирование и безопасность), чтобы потом вручную послать ему команду SELECT с AID нужного апплета?

Здесь мы споткнулись о первый подводный камень — Core NFC не позволяет отправлять команду SELECT, содержащую AID, который не прописан в info.plist.

Хорошо, добавили A0000000041010, но и тут неудача — Core NFC не позволяет отправлять команду SELECT, содержащую платежный AID, вне зависимости от того, есть он в info.plist или нет.

Разберемся, как именно работает ограничение по идентификаторам.

В info.plist мы указали следующие AID’ы:

1. A000000001510000                        	- GlobalPlatform Card Manager AID
2. 325041592E5359532E444446303101      - Proximity Payment System Environment (PPSE) 
3. A0000000041010                             	- Mastercard Credit/Debit (Global)
4. A00000000401                                 	- Mastercard PayPass
5. A00000000410101213                    	- Mastercard Credit
6. A00000000410101215                    	- Mastercard Credit
7. A00000000410101214                    	- Придуманный платежный AID                 
8. A00000000410101216                    	- Придуманный платежный AID 
9. A0000000041010121F                    	- Придуманный платежный AID 
10. A0000000041010BB5445535401 	        - Придуманный платежный Long AID
11. A0000000041010BB5445535405 	        - Придуманный платежный Long AID
12. A000000004101FBB5445535401 	        - Придуманный не платежный AID                
13. A000000004101F1213                    	- Придуманный не платежный AID                 
14. A00000000F1010                             	- Придуманный не платежный AID
15. A0000000040F                                     - Придуманный не платежный AID

Мы установили 14 платежных апплетов с разными AID (пп. 2-11 — платежные AID-ы), и попробовали отправить Card Manager команды SELECT с каждым из этих AID.

Проблемы NFC:  Обзор Infinix HOT 11S NFC: смартфон, способный удивить - 4PDA

Ответили номера 12-15.  

Получается, что ограничение накладывается именно на некий префикс AID, наличие которого и определяет, платежный это идентификатор или нет.

Жаль, но этот способ отпадает.

Второй способ персонализации, предусмотренный GlobalPlatform, это команда INSTALL [for personalization].

Она отправляется в Card Manager и содержит AID апплета, который нужно персонализировать.

После этого можно отправлять команды STORE DATA в Card Manager, а он будет пересылать их в целевое приложение.

Но есть одно ограничение. Для того, чтобы апплет поддерживал такой способ персонализации, он должен реализовывать интерфейс org.globalplatform.Application.

Card Manager, на команду INSTALL [for personalization] с Mastercard Credit/Debit (Global) AID, который был присвоен апплету M/Chip Advance от NXP, отвечал ошибкой «6985» (Conditions of use not satisfied),

а значит надо проверить, реализует ли он интерфейс Application.

Для этого мы написали простое приложение-пустышку, реализующее этот интерфейс. Как и ожидалось, на INSTALL [for personalization] оно ответило «9000».

Но когда Application был убран из интерфейсов, реализуемых приложением, оно стало отвечать на эту команду «6985», как и в случае с апплетом M/Chip Advance.

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

Считыватели скуд

Вы выбрали:

Показывать на странице:

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

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

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

Бесконтактные считыватели карт делятся на ближние и дальние. При обустройстве наших систем используются, в основном, устройства первого типа, которые принимают сигнал с расстояния от 1 до 10 см. Именно они чаще всего применяются в системах СКУД.

Дальний считыватель карт — это более дорогое устройство, принимающее сигналы от идентификаторов на расстоянии от 1 до 100 метров. Они используются, в основном, в логистике и на больших производственных предприятиях.

Наши специалисты помогут каждому клиенту в соответствии с его текущими потребностями выбрать считыватель карт и иное оборудование для СКУД, выполнят его монтаж, настройку и дальнейшее обслуживание.

§

Вы выбрали:

Показывать на странице:

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

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

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

Бесконтактные считыватели карт делятся на ближние и дальние. При обустройстве наших систем используются, в основном, устройства первого типа, которые принимают сигнал с расстояния от 1 до 10 см. Именно они чаще всего применяются в системах СКУД.

Дальний считыватель карт — это более дорогое устройство, принимающее сигналы от идентификаторов на расстоянии от 1 до 100 метров. Они используются, в основном, в логистике и на больших производственных предприятиях.

Наши специалисты помогут каждому клиенту в соответствии с его текущими потребностями выбрать считыватель карт и иное оборудование для СКУД, выполнят его монтаж, настройку и дальнейшее обслуживание.

§

Вы выбрали:

Показывать на странице:

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

Проблемы NFC:  Как добавить мегафон оплатить через Google Play и номер телефона GPRS

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

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

Бесконтактные считыватели карт делятся на ближние и дальние. При обустройстве наших систем используются, в основном, устройства первого типа, которые принимают сигнал с расстояния от 1 до 10 см. Именно они чаще всего применяются в системах СКУД.

Дальний считыватель карт — это более дорогое устройство, принимающее сигналы от идентификаторов на расстоянии от 1 до 100 метров. Они используются, в основном, в логистике и на больших производственных предприятиях.

Наши специалисты помогут каждому клиенту в соответствии с его текущими потребностями выбрать считыватель карт и иное оборудование для СКУД, выполнят его монтаж, настройку и дальнейшее обслуживание.

Три мифа о безопасности мобильных платежей

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

Три мифа о безопасности мобильных платежей / Хабр

Мобильные платежи с помощью NFC небезопасны: злоумышленники могут получить личную информацию со смартфона через взломанный терминал.

Технология Near-Field Communication, сокращенно NFC, появилась несколько лет назад, но уже получила широкое распространение в больших городах. Еще бы: мало кто любит носить с собой кучу карточек, гораздо удобнее приложить к терминалу телефон. Одновременно с появлением новой технологии появились сомнения в ее безопасности.

Принцип работы NFC основан на работе в ближнем магнитном поле двух индукционных катушек. Чтобы сработать, бесконтактный терминал и карточка должны находится на расстоянии не более 5 см друг от друга. Но это еще не все.

Смартфоны с NFC-устройством оснащены дополнительными системами безопасности. Приложения Samsung Pay, Android Pay, Apple Pay заменяют реальный номер карты на Device Account Number – аналог, данные которого остаются у продавца при покупке вместо реальных данных вашей банковской карты. С этими данными ни продавец, ни злоумышленники ничего не смогут сделать.

Три мифа о безопасности мобильных платежей / Хабр

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

Нет. После того, как вы авторизуете карту в системе, компания получает у банка Device Account Number и привязывает его к карте и телефону, а данные самой банковской карты не сохраняет. В результате, компания-разработчик получает только статистику. А данные карты остаются у платежной системы (Visa или Mastercard), банка и у вас.

Cегодня платежи со смартфона безопаснее платежа напрямую с карты. На это есть несколько причин:

Попытки взломать платежные NFC-системы предпринимались с самого начала распространения технологии. Часто хакеры тренируются на взломе транспортных карт для их бесплатного пополнения: подобные инциденты случались как в

России

, так и

за рубежом.

Тем не менее, убедительных свидетельств взлома пока не случалось.

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

Но мошенники не дремлют, и уже научились воровать деньги напрямую с карточки с помощью самодельных ридеров: они прикладываются на расстоянии 5-15 см к считывателю карты и снимают деньги везде – на рынках, в магазинах, в общественном транспорте. Правда вряд ли кто-то спокойно отреагирует, если посторонний будет сканировать его карман или карточку в руке – поэтому и защититься от такого воровства легко, если не «светить» своими карточками подолгу в общественных местах. Для этого даже продаются специальные защитные кошельки — RFID blocking wallet. Ну или можно обернуть их в фольгу – это правда работает. Шапочка из фольги может уберечь вашу карточку, но не голову – не перепутайте! 🙂

Если держать телефон у терминала слишком долго, то деньги снимут несколько раз

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

Проблемы NFC:  Как снять деньги в банкомате без карты через телефон c NFC? | AndroidLime

Во всех случаях телефон ни при чем, так же как и его расстояние до терминала оплаты. Сигнал получен – деньги списаны – терминал печатает чек. Если устройство исправно и подключено правильно, то повторно деньги не спишутся.

Одноразовые коды по SMS спасают от несанкционированного перевода денег со счета

Банки часто присылают одноразовый пароль безопасности по смс для подтверждения интернет-платежа со зловещим предупреждением НЕ ПОКАЗЫВАЙТЕ ПАРОЛЬ НИКОМУ.

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

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

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

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

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

Три мифа о безопасности мобильных платежей / Хабр

Что делать?

К сожалению, пока что банки не поддерживают альтернативные способы аутентификации. Единственное, что остается – следить за безопасностью мобильных устройств и компьютеров, с которых вы оплачиваете покупки:

Установление соединения


Именно здесь речь пойдет о фичах фреймворка

, добавленных в iOS 13.

Кстати, в iOS 14 никаких существенных изменений относительно предмета статьи не случилось, поэтому все описанное актуально и для нее.

Итак, в тринадцатой версии яблочной ОС стало возможным не только считывать данные с NFC меток, как это было в iOS 12 (но не раньше iOS 11, до нее взаимодействие по NFC было возможно только в рамках Apple Pay), но и записывать их, а также общаться  на языке APDU-команд с любым чипом, который соответствует одному из следующих стандартов:


Для этого в

https://www.youtube.com/watch?v=WyNnJ0xokmQ

были добавлены два новых класса:

Первый используется для взаимодействия с NDEF метками, а второй — для всего остального, соответственно.

В нашем случае это чип, поддерживающий спецификацию GlobalPlatform Card Specification 2.2.1 и стандарт ISO/IEC 7816, значит, будем использовать второй класс.

В документации написано, что нужно сделать (помимо написания кода, конечно), чтобы начать общение с чипом по ISO 7816:

Но ниже есть вот такое интересное ограничение:

ImportantCore NFC doesn’t support payment-related Application IDs.Как раз его мы и хотим «пощупать», узнав, что конкретно оно означает.

Добавляем строку, например «Allow NFC connection» для ключа NFCReaderUsageDescription в файле info.plist. С любым другим значением этого ключа тоже работает. 

[Здесь в колонке слева не сам ключ, а его описание, XCode прячет формальные названия]

Дальше, если мы хотим взаимодействовать с чипом, как с устройством стандарта ISO/IEC 7816, то в значении ключа com.apple.developer.nfc.readersession.iso7816.select-identifiers укажем список ID всех апплетов (Application Identifier или AID), с которым будет взаимодействовать приложение.

Здесь стоит пояснить, что эти идентификаторы — не просто случайный набор символов.

Это шестнадцатеричные (hex) строки, содержащие информацию о приложении, которому они присвоены.

AID’ы могут быть длиной от 5 до 16 байт (два символа в строке = один байт). Они состоят из двух частей, первая определяет провайдера приложения (для Mastercard это «A000000004»), вторая говорит, какой именно это продукт данного провайдера (для продукта с именем «Mastercard» это «1010», а, например, для Maestro это «3060»).

Кроме того, иногда в AID требуется поместить дополнительную информацию, например, если на чипе находятся два одинаковых приложения от одного провайдера, но для разных банков. Для этого существует поддержка Long AID (или Extended AID). До тех пор, пока длина AID не превышает 16 байт, в него можно записывать все, что угодно. Например, мы взяли Mastercard AID и в конце дописали к нему «TEST», итог: «A0000000041010BB5445535401».

Единственный AID, который выбивается из списка — «325041592E5359532E444446303101». На самом деле это обычная (только в hex-формате), что называется, plain-text строка «2PAY.SYS.DDF01». Это AID PPSE, который платежным апплетом, как таковым, не является. Он лишь содержит данные окружения, необходимые платежным приложениям.

Оцените статью
NFC в смартфонах
Добавить комментарий