Объектом ограбления стали банкоматы General Bytes, компании, имеющей несколько представительств по всему миру. Эти BATM могут быть установлены, например, в магазинах или в других публичных местах, чтобы позволить людям обменивать биткоин на другие валюты и наоборот.

Интересно Банкопад на России: IT-Армия Украины массово атакует финансовые организации врага

Что произошло

Клиенты, устанавливающие такие банкоматы у себя, подключают BATM к серверу криптографических приложений (CAS), которым они могут управлять. В этом случае таким сервером управляла для них General Bytes. По непонятным причинам аппараты предлагают опцию, позволяющую загружать видео с терминала на CAS с помощью механизма, известного как интерфейс главного сервера.

На выходных компания General Bytes обнаружила, что с CAS, которыми она управляет, были выведены биткоины на сумму свыше 1,5 миллиона долларов США. Чтобы совершить кражу, неизвестный злоумышленник воспользовался ранее неизвестной уязвимостью, позволившей ему использовать интерфейс для загрузки и запуска вредоносного Java-приложения. Затем он скачал из разных кошельков около 56 BTC.

После анализа ситуации компания говорит, что неизвестный мог:

  • Получать доступ к базе данных.
  • Считывать и расшифровывать закодированные ключи API, необходимые для доступа к кошелькам и биржам.
  • Переводить средства с кошелька на кошелек.
  • Загружать имена пользователей и хэши паролей, выключать 2FA.
  • Получать доступ к журналам событий терминала и находить случаи, когда клиенты сканировали частные ключи в банкомате.

General Bytes исправили уязвимость через 15 часов после того, как узнали о ней, но из-за особенностей работы криптовалют потери необратимы. В 2021 году она прошла "многочисленные проверки безопасности", но не нашла эту уязвимость. Теперь компания говорит, что больше не будет управлять CAS от имени клиентов. Это означает, что владельцы терминалов должны будут сами управлять серверами.