Під час конференції Chaos Communication Congress представив доповідь про проблеми, пов’язані з апаратними гаманцями Trezor та Ledger. Авторами дослідження є Дмитро Недоспасов, Томас Рот і Джош Датко. Вони одночасно виявили кілька вразливостей безпеки гаманців: атаки через сторонній канал, атаки на ланцюг постачання, вразливості на рівні прошивки та чипа.
Багато виробників таких пристроїв наклеюють на свої продукти та упаковку захисні наклейки, які засвідчують, що ані упаковку, ані сам пристрій не відкривали. Експерти почали свою доповідь із простої демонстрації: за допомогою звичайного фена наклейки, розміщені на коробці Trezor One та USB-порту гаманця, були без жодних слідів видалені. Головне — стежити за температурою й не надто нагрівати наклейки та гаджети.

Пристрої Ledger постачаються без захисних наклейок, адже вони ефективно гарантують, що перевірка цілісності виконується щоразу під час увімкнення пристрою, а чип Secure Element запобігає будь-яким спробам фізичного втручання. Тож після того як експерти позбулися наклейок на Trezor, вони перейшли до Ledger, «відкрили» гаманці та отримали доступ до їхніх апаратних компонентів.

Далі експерти заявили, що в гаманцях Trezor можна замінити мікроконтролер. «Після цього на пристрої Trezor можна встановити ваш скомпрометований завантажувач», пояснює Датко. Під час презентації експерти пропустили цей етап, але пояснили учасникам, що в лабораторії їм вдалося підключитися до апаратного налагоджувача та отримати безкоштовний доступ до чипа, що дозволяло перепрошивати компоненти за допомогою шкідливого коду.
Гаманець Ledger, у свою чергу, мав найпростіший апаратний імплант, який дозволяє підтверджувати транзакції без участі користувача. Експерти витратили на це лише 3,16 долара: вони встановили на пристрій RF-перемикач, яким можна керувати віддалено за допомогою радіочастот (щонайменше на відстані 11 метрів із передавачем потужністю 50 Вт).

Що стосується програмної частини гаманців, дослідникам вдалося розібрати механізм оновлення прошивки на Ledger Nano S і знайти помилку, яка дозволяє записати на пристрій власну прошивку. Виробник передбачив захист від подібних атак: автентичність образу прошивки перевіряється за допомогою криптографічної функції. Однак після завершення перевірки константа 0xF00BABE записується в пам’ять, і перевірка виконується лише один раз, а не під час кожного запуску пристрою. Внаслідок цього дослідники дійшли висновку, що для обходу механізму захисту достатньо було розмістити адресу пам’яті 0xF00BABE у певному місці. Після цього їм вдалося запустити гру «Snake» на скомпрометованому пристрої, використовуючи дві доступні кнопки для керування рухом на крихітному дисплеї гаманця.

На Ledger Blue можна було здійснити атаку через побічний канал (бічна атака). Вивчаючи апаратне забезпечення пристрою, Томас Рот виявив, що гаманець має довгий провідник, який поводиться як антена. Сигнал підсилюється, якщо пристрій підключено до USB-кабелю. За допомогою обладнання SDR експерти перехопили та проаналізували ці радіохвилі. Тому Рот розробив фреймворк, який автоматично записував сигнал під час введення PIN-коду та використовував модель штучного інтелекту, щоб перетворювати ці дані на інформацію, зрозумілу людині. Унаслідок цього експерти досягли 90% точності цих «передбачень».

Ще одну проблему виявлено в гаманці Trezor One, який працює на мікроконтролері STM32F205, що фактично керує роботою всіх компонентів. Справа в тому, що у 2017 році в цій моделі мікроконтролери виявили вразливість до впровадження збоїв (fault injection). Минулого року експерти не знали, чи поширюється ця проблема на апаратні гаманці, але фахівці CCC повідомили, що після вивчення процедур завантаження та оновлення вони виявили: закритий ключ або базовий ключ можна витягти з оперативної пам’яті. Така атака дасть зловмиснику доступ до криптовалюти та дозволить переказати кошти на інший гаманець.

Виробники вже відреагували на презентацію експертного звіту. Так, розробники Ledger заявили, що всі продемонстровані атаки важко реалізувати, вони потребують фізичного доступу до пристрою, а звичайним користувачам немає причин для хвилювання, оскільки таку компрометацію важко втілити на практиці.
Розробники Trezor, у свою чергу, повідомили, що вже готують виправлення, хоча також наголосили, що атаки можливі лише за наявності фізичного доступу до пристрою.