VU#701544: mpc-lib: Усиленная ... Заметка

VU#701544: mpc-lib: Усиленная деривация не защищает изоляцию предков

Уязвимость существует в реализации BIP32 hardened derivation библиотеки mpc-lib от Fireblocks. Эта уязвимость позволяет злоумышленнику восстановить доли приватного ключа более высокого уровня из скомпрометированной доли более низкого уровня. Проблема возникает, когда отсутствует родительский приватный ключ, что приводит к подстановке системой нулевого буфера, фактически становясь известной константой нуля. Это нарушение изоляции предков означает, что скомпрометированная дочерняя доля может быть использована для вывода родительской доли. Затем уязвимость может повторяться по всей иерархии ключей. Хотя это не позволяет немедленно украсть средства, это значительно ослабляет меры безопасности. Hardened derivation больше не является надежным уровнем изоляции для долей подписантов. Компрометация может распространяться незаметно, не оставляя сигналов об ошибках. Интеграторам рекомендуется рассматривать chain codes как секретные, поскольку расчет дельты вывода зависит от них. Сохранение конфиденциальности chain codes предотвращает публичную вычислимость дельты. В качестве альтернативы, не полагайтесь исключительно на hardened derivation для изоляции между долями подписантов. Также рекомендуется аудит путей вывода и признание потенциальной компрометации между иерархиями. Полное решение требует изменения кода библиотеки, для которого в настоящее время нет исправления от поставщика.