Core Lightning, реализация узла Lightning Network, исправила уязвимость при закрытии канала в версии v26.06.7, которая могла позволить узлу-партнеру транслировать старое, отозванное состояние канала без применения штрафа за мошенничество. Объяснение Bitcoin Optech от 25 сентября о теперь общедоступном патче конкретизирует риск для операторов, все еще использующих старые сборки.
Узлы Lightning заменяют предыдущие обязательства по каналу при изменении балансов. Если один из узлов транслирует отозванное обязательство, контрагент должен иметь возможность применить штраф. До исправления Core Lightning мог вместо этого рассматривать эту трату средств как кооперативное закрытие, если ее выходы совпадали с уже зарегистрированными скриптами завершения.
Это зависело от конкретной настройки канала. Узел, который не указал скрипт завершения заранее при открытии канала, мог позже указать выходной скрипт своего отозванного обязательства в сообщении о завершении. Затем он мог отказаться от кооперативного закрытия и транслировать старое обязательство. Простое совпадение выходов делало транзакцию легитимной, обходя путь штрафа, согласно примечаниям к патчу и регрессионному тесту от сопровождающих.

Исправление проверяет блокировку времени транзакции и кодировку последовательности, чтобы распознать обязательство, прежде чем рассматривать его выходы как возможное взаимное закрытие. Материалы описывают потенциальный способ уклонения от штрафа, а не подтвержденную кражу. Это проблема обработки каналов Core Lightning, а не изменение базовых правил сети Bitcoin.
Что следует проверить операторам
Сборка Core Lightning старше исправленной версии v26.06.7 требует обновления. Проект настоятельно рекомендует v26.06.8, более поздний выпуск безопасности с дополнительными исправлениями. Путь отозванного закрытия требует вышеупомянутого условия скрипта завершения, поэтому уязвимая версия программного обеспечения не означает, что каждый канал может быть использован таким образом.
Операторы, которые использовали образы Docker во время предыдущего развертывания, также должны проверить дайджест образа. Примечания к выпуску v26.06.7 проекта гласят, что образы, предоставленные под тегами v26.06.7 и связанными с ними с 28 августа по 1 сентября, сообщали новую версию при запуске, но не имели ее исправлений. Проект перечисляет исправленные дайджесты и инструктирует пользователей с несоответствием повторно загрузить образ.
История версий разделяет два патча. Core Lightning выпустила v26.06.7 28 августа, затем опубликовала свой изначально эмбаргированный исходный код 11 сентября. Запрос на слияние 9509, объединенный в основную ветку разработки 15 сентября, перенес эти изменения. Версия v26.06.8 последовала 22 сентября с другими исправлениями безопасности и немедленно доступным исходным кодом, хотя несколько тестов оставались скрытыми. Отчет Optech от 25 сентября объяснил уже выпущенное исправление отозванного закрытия.
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Liam 'Akiba' Wright




