«ОДОЛЖИТЬ» ПЛАТЕЖНЫЕ КАРТЫ С ПРОКСИ-СЕРВЕРОМ NFC

Tomcat

Professional
Messages
2,380
Reputation
4
Reaction score
407
Points
83
uniproxy-nfc-def-con-featured.jpg


Бесконтактные платежи становятся все более популярными. Часто этот термин напоминает возможность оплаты, поднеся телефон к считывающему устройству, но система также может использовать теги NFC, встроенные в кредитные карты, удостоверения личности, паспорта и т.п. NFC является достаточно безопасным методом проверки платежей, поскольку он использует шифрование, а функциональное расстояние между клиентом и считывателем составляет десятки сантиметров, а зачастую и меньше. [Хаоци Шань] и команда Unicorn снизили безопасность компонента расстояния, используя аппаратный прокси-сервер для ретрансляции взаимодействия NFC на большие расстояния.

В докладе , прошедшем в воскресенье на DEF CON, было описано невероятно простое оборудование: антенна NFC, подключенная к PN7462AU , беспроводной трансивер NRF24L01 и некоторые элементы регулирования мощности. Эксплойт работает с использованием пары этих аппаратных модулей. Главный интерфейс взаимодействует со считывателем NFC, а подчиненный считывает карту. Сценарий выглядит примерно так: NFC-карта жертвы помещается рядом с подчиненным оборудованием. Главное оборудование размещается над платежным киоском, как при совершении обычного платежа. Когда считыватель платежного киоска начинает процесс считывания карты NFC, все данные между ним и самой картой пересылаются через беспроводное соединение 24L01.

Демонстрационное видео во время разговора показало покупку фаст-фуда, совершенную в сети Apple Pay, когда карта все еще находилась на столе в обеденной зоне (на подчиненном аппаратном модуле). В качестве карты использовалась бесконтактная платежная карта QuickPass от China UnionPay. Согласно пресс-релизу компании за 2016 год, на тот момент было выпущено более двух миллиардов таких карт. При таком уровне внедрения появляется огромный стимул находить и исправлять любые уязвимости в системе.

Аппаратные компоненты в этой сборке на самом деле не представляют собой ничего особенного. Мы видели, как эти скандинавские беспроводные модули использовались во многих проектах на протяжении многих лет, а чип NXP — это просто NFC, построенный на ядре ARM. Скачки, которые связывают это воедино, — это ускорения, позволяющие этому работать. NFC имеет сжатые сроки, и задержка между ведущим и ведомым устройствами может сделать недействительным рукопожатие и последующие взаимодействия. Команда Unicorn обнаружила некоторое ускорение, обеспечив выход чипа из режима ожидания (150 мкс), а не более глубокий сон. Кроме того, [Хаоци] упомянул, что они передают только «блочные данные I/S/R», а не все взаимодействие, чтобы сэкономить время при передаче по беспроводному каналу 24L01. Он не стал вдаваться в подробности, поэтому, если у вас есть подробности о том, из чего на самом деле состоят эти блоки, сообщите нам об этом в комментариях ниже.

Для устройства считывания карт эмулируемая платежная карта действительна и платеж проходит. Но одно предостережение к системе заключается в том, что [Haoqi] не смог изменить UID эмулятора — он не подделывает UID эксплуатируемой платежной карты. Текущие читатели не проверяют UID, и это может быть одной из возможных мер защиты от этого эксплойта. Но если честно, поскольку нужна непосредственная физическая близость мастера к считывателю и слейва к платежной карте одновременно, хаоса в будущем мы не видим. Более вероятно, что мы увидим хакерскую репутацию, когда кто-то построит линию связи большого радиуса действия, которая позволит вам оставить свои NFC-карты дома и взять с собой один эмулятор для беспроводного доступа к двери или бесконтактных платежей на одном устройстве. Если вы хотите поработать над этим, просмотрите слайды докладов, посвященные ходу программы, и некоторые подсказки по исходному коду.

(c) https://hackaday.com/2017/07/31/borrow-payment-cards-with-nfc-proxy-hardware/
 
Top