Пользователь форума Bitcointalk под ником warith рассказал историю о том, как он потерял $60 000 – $70 000 из-за уязвимости популярного криптовалютного кошелька Coinomi.
Автор утверждает, что 14 февраля скачал и установил приложение Coinomi, после чего ввёл в его интерфейс кодовую фразу от своего основного кошелька на базе Exodus. «Я доверял им, потому что скачал ПО с их сайта, установочный файл имел цифровую подпись, а их имя фигурировало на нескольких признанных сайтах, таких как bitcoinwiki.org. Я хотел переместить некоторые активы, которые не поддерживались кошельком Exodus, используя ту же кодовую фразу», – пишет он.
22 февраля пользователь заметил в интерфейсе Exodus, что 90% активов с его кошелька было выведено на различные адреса – сначала биткоины, затем ETH, ERC20-токены, LTC и, наконец, BCH. В кошельке остались только те активы, которые поддерживались Exodus, но не поддерживались Coinomi.
Проанализировав клиент Coinomi, автор выяснил, что весь интерфейс кошелька написан на HTML/JavaScript и отображается при помощи браузера на базе Chromium. «Я начал отслеживать трафик. Первая вещь, которая бросилась мне в глаза, заключалась в том, что приложение Coinomi в момент запуска стало скачивать список слов из словаря».
После этого пользователь ввёл случайную кодовую фразу в поле для восстановления кошелька и обнаружил, что в виде незашифрованного текста она была передана на адрес googleapis.com для проверки правописания. В качестве альтернативного метода проверки автор ввёл слово с орфографической ошибкой, которое, ожидаемо, было подчёркнуто красным.
«По сути, текстовое поле, в которое вы вводите свою кодовую фразу, является HTML-файлом, запускаемым компонентом браузера Chromium. Как только вы в него что-то введёте, данные будут немедленно и без уведомления переданы googleapis.com для проверки правописания. Таким образом, кто-то из команды Google или имеющий доступ к HTTP-запросам, передаваемым на googleapis.com, обнаружил кодовую фразу и использовал её, чтобы украсть $60 000 – $70 000 в криптовалютных активах. Все, кто связан с технологиями и криптовалютами, знают, что 12 случайных английских слов могут являться кодовой фразой от криптовалютного кошелька», – пишет warith.
Команда Coinomi официально не прокомментировала этот инцидент. Автор, однако, заявил, что она удалила свой комментарий к его претензии в Twitter и давала уклончивые ответы в личной переписке, добавив, что он намеревается предъявить компании исковые требования, если она продолжит избегать ответственности.
UPD: В разговоре с Trustnodes представитель Coinomi сообщил, что проблема касалась только десктопной версии кошелька и не затрагивала пользователей на мобильных устройствах. Он также утверждает, что запросы к Google были зашифрованными и некорректными, из-за чего Google они не обрабатывались. Проверка правописания осуществлялась локально, заявил представитель, добавив, что это неофициальный ответ, но официальный обязательно последует. По его словам, проблема была устранена 3 дня назад.