Виробник криптогаманців Ledger закликає користувачів своєї програми Ethereum знову оновити її, оскільки в попередньому оновленні безпеки залишилися дві вразливості підпису.
Виробник апаратного гаманця опублікував додаток Ethereum версії 1.22.3 25 серпня, усунувши вразливості, які могли приховувати операції від перевірки пристрою або авторизувати схвалення токена замість очікуваної платіжної операції.
Оновлення відбулося після скандалу, пов’язаного з окремою вразливістю підпису ethereum, відтвореною конкурентом — виробником гаманців OneKey. Ця проблема, відома як LSB-023, стосувалася старіших версій і дозволяла скомпрометованому хосту вставляти команди, що призводило до зміни параметрів транзакції після їх відображення, але до підпису.
Ledger сказав, що OneKey продемонстрував цю помилку щодо версії 1.22.1 після того, як компанія вже виправила її в Ethereum-додатку 1.22.2, випущеному 13 серпня.
«Жоден користувач Ledger не був взламаний», — сказала команда безпеки Ledger said, описавши демонстрацію як лабораторне відтворення з використанням застарілого програмного забезпечення. Компанія заявила, що не знайшла жодних доказів експлуатації в реальних умовах.
Головний технічний офіцер Ledger Чарльз Гільємезробив ту саму різницю, сказавши, що відтворення вже виправленої проблеми не становить «взлому Ledger».
Версія 1.22.2, однак, не усунула всі відомі вразливості Ethereum-додатків на Ledger. Натомість два окремі недоліки, LSB-024 і LSB-025, залишилися до випуску 1.22.3.
Два додаткових шляхи підпису залишилися відкритими
LSB-024 вплинув на те, як додаток Ethereum обробляв масиви операцій під час чіткого підписання.
Додаток зчитував кількість операцій за допомогою 16-бітного значення, але залишкову кількість зберігав у 8-бітному полі. У доказі концепції Ledger масив, що містив 257 операцій, перезаписав лічильник на одиницю, що призвело до того, що пристрій відображав лише останню операцію, хоча його підпис авторизував всю партію.
Експлуатація вимагала скомпрометованого хоста та незвичайно великої групи операцій, що контролюються зловмисником. Ledger протестував цей сценарій на приватній мережі форку і повідомив про відсутність втрат реальних користувачів.
Друга вразливість, LSB-025, стосувалася шляху оплати токенами, який використовувався додатком Ledger Exchange під час обмінів.

Застосунок Ledger перевірив токен, кількість та місце призначення, але не перевірив, чи запитана дія дійсно є платежем. Зловмисний або скомпрометований постачальник обміну може замінити схвалення токена, що відповідає тим самим параметрам, і отримати підписання без додаткового запиту з пристрою.
Цей недолік не міг створити безмежне дозволення, переключитися на інший токен або надати дозвіл довільній адресі. Дозволення саме по собі не здійснює переказ коштів, вимагаючи наступної транзакції перед тим, як затверджені активи могли б бути переміщені.
Ledger повідомив, що не знайшов доказів того, що вразливість обміну була використана.
Історія випусків викликає окреме питання. Записи Ledger показують, що виправлення проблеми з кількістю масивів було об’єднано 5 травня, а виправлення перевірки обміну — 25 травня, за місяці до випуску версії 1.22.2. Їхній безпековий бюлетень не пояснює, чому ці зміни відсутні у цьому оновленні.
Ledger захищав свій ширший підхід, зазначивши, що оновлюваність є центральною для безпеки апаратного гаманця. Його команда з безпеки сказала, що вона постійно виявляє вразливості завдяки внутрішнім дослідженням та зовнішнім програмам баг-баунтів, а потім усуває їх за допомогою оновлень програмного забезпечення.
Для користувачів важливо розрізняти три вразливості. Версія 1.22.2 виправила недолік, пов’язаний з перекриттям команд, який пізніше був відтворений OneKey, тоді як для усунення двох додаткових помилок підпису, розкритих 27 серпня, необхідна версія 1.22.3.
Ledger рекомендує встановити додаток Ethereum 1.22.3 або новіший через Ledger Live та перевірити версію на пристрої. Оновлення прошивки апаратного гаманця саме по собі не замінює вразливий додаток Ethereum.
Пост Ledger стверджує, що вірусний «хак» вже був виправлений, але два реальні баги все ще потрібно було виправити з’явився першим на CryptoSlate.

