Kraken Security Labs опубликовала отчет об уязвимостях криптоматов General Bytes – Bits Media

Подразделение биржи Kraken, занимающееся исследованиями в области безопасности, опубликовало разбор уязвимостей популярной модели криптомата BATMtwo от General Bytes.

Согласно статье
в блоге Kraken Security Labs, широко используемая модель криптомата имеет несколько программных и аппаратных уязвимостей. 20 апреля исследовательское подразделение Kraken уведомило производителя криптоматов компанию General Bytes о векторах атак. General Bytes выпустила исправления для серверной системы, однако некоторые исправления могут потребовать доработки оборудования.

Как заявляют исследователи безопасности Kraken, рассматриваемая модель BATMtwo (GBBATM2) имела несколько уязвимостей, включая проблемы с QR-кодом администратора по умолчанию, базовым операционным программным обеспечением Android, системой управления криптоматом и аппаратным корпусом устройства.

Проблемы с QR-кодом администратора

При приобретении криптомата GBBATM2 его новый владелец должен провести настройку устройства с помощью QR-кода «Ключ администрирования», который необходимо отсканировать на криптомате. QR-код, содержащий пароль, необходимо устанавливать отдельно для каждого банкомата в бэкэнд-системе.

Однако при просмотре кода интерфейса администратора исследователи Kraken обнаружили, что он содержит хэш ключа администрирования заводских настроек по умолчанию. Kraken приобрела несколько бывших в употреблении криптоматов из разных источников и выяснила, что каждый из них имеет одинаковую конфигурацию ключей по умолчанию.  Это означает, что многие владельцы GBBATM2 не меняли QR-код администратора. Во время тестирования отсутствовала возможность управления ключом администрирования для группы криптоматов, то есть каждый QR-код нужно было менять вручную. Таким образом, любой может взять под контроль криптомат через административный интерфейс, просто изменив адрес сервера управления устройством.

Аппаратное обеспечение

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

Kraken Security Labs опубликовала отчет об уязвимостях криптоматов General Bytes - Bits Media

Программное обеспечение

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

Android поддерживает «режим терминала самообслуживания», который блокирует пользовательский интерфейс в одном приложении, что может помешать получить доступ к другим областям программного обеспечения, однако он не был включен в систему криптомата.

Отсутствие проверки прошивки/программного обеспечения

BATMtwo содержит встроенный компьютер на базе NXP i.MX6. Исследователи Kraken обнаружили, что BATMtwo не использует функцию безопасной загрузки процессора и что его можно перепрограммировать, просто подключив USB-кабель к порту на плате-носителе и включив компьютер, удерживая нажатой кнопку.

Kraken Security Labs опубликовала отчет об уязвимостях криптоматов General Bytes - Bits Media

Встроенный компьютер в BATMtwo: SoM Variscite i.MX6 с нестандартной платой-носителем.

Кроме того, загрузчик устройства разблокирован: простого подключения последовательного адаптера к порту UART на устройстве достаточно для получения привилегированного доступа к загрузчику. Исследователи отмечают, что процесс безопасной загрузки многих процессоров i.MX6 уязвим
для атаки, однако на рынке есть более новые процессоры с исправленной уязвимостью, впрочем они могут быть недоступны из-за глобальной нехватки микросхем.

Отсутствие защиты от подделки межсайтовых запросов в серверной части банкомата

Криптоматы BATM управляются с помощью Crypto Application Server (CAS) – программного обеспечения, которое может быть размещено оператором или лицензировано как SaaS. Команда Kraken обнаружила, что CAS не реализует никаких средств защиты от подделки межсайтовых запросов, что позволяет злоумышленнику генерировать аутентифицированные запросы к CAS. Хотя большинство конечных точек защищены очень трудно угадываемыми идентификаторами, исследователи смогли идентифицировать несколько векторов CSRF, которые могут успешно скомпрометировать CAS.

В заключение исследователи отметили, что безопасность криптоматов BATM остается под вопросом из-за известных уязвимостей как в их аппаратном, так и в программном обеспечении. Kraken Security Labs рекомендует использовать только криптоматы BATMtwo, установленные в надежных местах.

По данным Coin ATM Radar, General Bytes – второй по величине производитель криптоматов, на долю которого приходится 22.7% мирового рынка. Напомним, что в июле общее число установленных криптоматов в мире превысило
24 000.