Ошибка затрагивала все предыдущие версии Electrum и заключалась в отсутствии проверки цифровых подписей для неподтвержденных транзакций. Злоумышленники могли заменить реальные платежи фальшивыми, подменяя адрес получателя и устанавливая нулевую комиссию. Пользователь видел в истории транзакций поддельную операцию, ошибочно полагая, что платёж завис. Попытки увеличить комиссию приводили к отправке средств на адрес злоумышленника вместо первоначального получателя.
Атака стала возможной из-за модели доверия Electrum к внешним серверам, обрабатывающим транзакции. По словам разработчиков, некоторые серверы действительно эксплуатировали эту уязвимость в реальных условиях. Уже зафиксирована потеря средств одним из пользователей, обнаружившим атаку 18 октября. Первый сигнал о проблеме поступил ранее, 11 октября, когда другая жертва заметила подозрительное поведение сервера, однако тогда средства удалось сохранить.
Обновление версии 4.8.3 устраняет главную проблему — теперь кошелек проверяет подписи на входах, принадлежащих пользователю, прежде чем добавить транзакцию в историю. Однако разработчики отметили, что операции, поступающие извне и не касающиеся активов самого пользователя, пока продолжают приниматься без такой проверки. Полностью устранить этот риск сложнее и требует дополнительной доработки.
Это не первый случай атаки на Electrum. Ранее, в 2018 году, злоумышленники распространяли ложные уведомления об обновлении через вредоносные серверы, что привело к убыткам пользователей на общую сумму примерно $25 миллионов. Электрум продолжает использовать открытую модель серверов, позволяющую любому запускать собственный узел, что повышает удобство, но увеличивает вероятность подобных инцидентов.
Пользователи, подключающиеся исключительно к собственным серверам, не подвержены риску. Всем остальным рекомендуется немедленно обновить приложение до версии 4.8.3, доступной на официальном сайте Electrum или GitHub.