Операторам узлов, запускающим XRP Ledger, рекомендуют действовать быстро. Директор по инженерным разработкам Ripple, Виджай Кханна, 2 августа призвал инфраструктурных провайдеров завершить обновление узлов XRP Ledger до xrpld версии 3.2.1 после того, как разработчики обнаружили 31 июля атаку в виде «флуда» манифестов валидаторов, обрушившуюся на сеть. Реестр продолжал производить блоки на протяжении всего инцидента, но этот эпизод выявил уязвимость, связанную с истощением ресурсов, которую Ripple теперь стремится закрыть целевым хотфиксом.
Summary
Ключевые выводы
- Флуд манифестов валидаторов 31 июля подтолкнул Ripple к выпуску xrpld 3.2.1 как экстренного хотфикса, опубликованного 1 августа.
- XRP Ledger продолжал нормально закрывать реестры на протяжении всего события, без подтверждённой потери средств, изменения транзакций или сбоев консенсуса.
- Четыре новых механизма защиты теперь ограничивают размер манифеста, размер пакетов сообщений, рост кэша для неизвестных ключей валидаторов и исходящее распространение недоверенных данных.
- Операторы должны обновиться, убедиться, что xrpld запущен, а затем перезапустить сервис во второй раз, чтобы очистить любые манифесты, сохранившиеся до установки патча.
- Ripple сменила свой GPG-ключ для подписи пакетов 18 февраля, поэтому операторы должны доверять новому ключу, чтобы обновление установилось корректно.
Что спровоцировало обновление узлов XRP Ledger
Флуд был сосредоточен на манифестах валидаторов — криптографически подписанных записях, которые связывают постоянную мастер-идентичность валидатора с временным ключом, используемым им для повседневного валидационного трафика. Когда валидатор ротирует этот временный ключ, он рассылает новый манифест, подписанный своим мастер-ключом, чтобы узлы по всей сети могли проверить, что изменение легитимно.
До исправления узлы принимали, кэшировали и ретранслировали манифесты, привязанные к ключам валидаторов, которых они никогда раньше не видели, при условии, что данные были структурно корректны. Это создавало лазейку: кто-то мог сгенерировать большое количество неизвестных идентичностей и заставить каждый подключённый узел расходовать память, хранилище, полосу пропускания и вычислительные ресурсы только на обработку этого шума. Публичная запись в кодовой базе, связанная с инцидентом, описывает его как изъян в распространении манифестов, а не как компрометацию какого-либо аккаунта или ключа.
Несмотря на давление на ресурсы узлов, операционная команда XRP Ledger сообщила, что сеть всё время продолжала нормально закрывать реестры. Это важное различие: флуд нагружал инфраструктуру, но так и не привёл к нарушению консенсуса или повреждению истории транзакций.
Что внутри хотфикса xrpld 3.2.1
Ответ Ripple, датированный 31 июля и опубликованный как подписанный релиз ранним утром 1 августа, включает шесть коммитов в 13 изменённых файлах, четыре из которых напрямую ограничивают то, как узлы обрабатывают манифесты от нераспознанных валидаторов. Вместе они образуют четыре защитных механизма, призванных не допустить, чтобы аналогичный флуд снова истощил ресурсы узлов.
Первый механизм отклоняет чрезмерно большой манифест ещё до того, как узел завершит его декодирование, обрубая вычислительные затраты на обработку аномально крупных объектов на входе. Второй ограничивает количество недоверенных манифестов, которые могут передаваться внутри одного сетевого сообщения — как при приёме данных узлом, так и при подготовке их для пиров; слишком большие пакеты отбрасываются без автоматического разрыва соединения, что позволяет пропатченным и непропатченным узлам продолжать обмениваться данными в ходе развёртывания обновления.
Третье изменение ограничивает количество неизвестных идентичностей валидаторов, которые может содержать кэш манифестов узла; итоговый код устанавливает этот предел на уровне 100. Как только кэш заполняется, новые незарегистрированные ключи отклоняются, в то время как доверенные и ранее распознанные валидаторы продолжают работать без перебоев. Четвёртая корректировка меняет способ распространения недоверенных данных манифестов по сети, ужесточая исходящее распространение непроверенных слухов от пиров, но не затрагивая данные, связанные с настроенными или одобренными валидаторами. Этот баланс намеренный: обычная ротация ключей валидаторов по-прежнему работает, но неконтролируемый рост кэша за счёт «посторонних» больше невозможен.
Что сейчас нужно сделать операторам узлов
Рекомендации Кханны просты, но их нужно выполнять по порядку. Операторам следует установить стандартное обновление, подождать одну-две минуты, убедиться, что xrpld действительно запущен, а затем перезапустить сервис во второй раз.
Этот второй перезапуск — не формальность. Любые манифесты, которые узел оператора принял и сохранил до установки патча, всё ещё могут находиться в памяти или на диске. Установка 3.2.1 меняет то, как ПО обрабатывает новые манифесты в дальнейшем, но только свежий перезапуск очищает данные, которые узел получил, пока оставался уязвимым. Пропуск этого шага создаёт риск того, что устаревшие, недоверенные манифесты останутся на месте даже после того, как сам код был исправлен.
Есть и второй важный нюанс: доверие к пакетам. Ripple сменила GPG-ключ, которым подписывает пакеты xrpld, ещё 18 февраля, и инсталляции, которые до сих пор не доверяют этому новому ключу, могут не подтянуть обновление автоматически. Любой, кто управляет инфраструктурой XRPL, должен проверить конфигурацию ключей подписи, прежде чем считать, что обновление применится без проблем.
Важно, что это обновление узлов XRP Ledger нацелено исключительно на инфраструктуру, а не на отдельных держателей. Биржи, кастодианы, бэкенды кошельков, поставщики данных и любой бизнес, запускающий собственные серверы XRPL, должны подтвердить версию своих узлов и статус перезапуска. Обычным держателям XRP не нужно перемещать средства, менять ключи кошельков или открывать новые аккаунты из-за этой проблемы — исправление полностью находится на уровне серверов.
Почему отсутствие ущерба всё равно важно
Никакого идентификатора CVE или оценки финансовых потерь в связи с флудом опубликовано не было, а имеющиеся данные указывают на нагрузку на ресурсы узлов и одноранговый трафик, а не на подтверждённую кражу, изменение транзакций или сбой консенсуса. Это действительно обнадёживающий результат для сети, которая обрабатывает расчёты на миллиарды, но это не означает, что инцидент прошёл без затрат. Атаки, основанные на истощении ресурсов и не затрагивающие средства, всё равно могут ухудшать качество сервиса, замедлять работу инфраструктурных провайдеров и создавать возможности для последующих попыток, если установка патчей затягивается.
Именно этой части пока не хватает в публичной документации. Операционная команда XRP Ledger заявила, что позже опубликует технический постмортем, но по состоянию на 2 августа этот отчёт ещё не был опубликован. Пока он не выйдет, личность того, кто запустил флуд, фактический объём задействованных манифестов и скорость, с которой операторы узлов по всей сети перешли на 3.2.1, остаются открытыми вопросами. Ожидается также, что отчёт прояснит, когда разработчики впервые обнаружили необычный трафик и становились ли какие-либо отдельные узлы недоступными, несмотря на то, что общий реестр ни разу не прекращал производство блоков.
Это не первый вынужденный переход сети на новое ПО в этом году. Хотфикс 3.2.1 последовал за более крупным развёртыванием 3.2.0 15 июня, в рамках которого эталонный сервер был переименован с rippled на xrpld и потребовал отдельного раунда обновления конфигураций — это тот же релиз, который подтолкнул оператора инфраструктуры XRPL Дэвида Шварца мигрировать свою установку в преддверии новых изменений в наименовании и протоколе. Операторам узлов также пришлось уложиться в более ранний дедлайн по версии 3.1.3, связанный с активацией поправки (amendment). В совокупности эта картина говорит о том, что от инфраструктурного слоя XRPL требуют соответствовать всё более плотному циклу обновлений, и операторы, которые отстают хотя бы на одном релизе, рискуют унаследовать уязвимости, уже устранённые в других частях сети.
FAQ
Что вызвало необходимость обновления узлов XRP Ledger?
31 июля произошёл флуд манифестов валидаторов, вызвавший истощение ресурсов узлов, что потребовало хотфикса xrpld 3.2.1 для смягчения проблемы.
Привёл ли флуд манифестов к потере средств или сбоям консенсуса в XRP Ledger?
Согласно данным операционной команды XRP Ledger, во время флуда не было зафиксировано подтверждённых финансовых потерь, изменения транзакций или сбоев консенсуса реестра.
Каковы основные защитные механизмы, введённые в xrpld 3.2.1?
Обновление ограничивает размер манифеста, размер пакетов сообщений, рост кэша для неизвестных ключей (с потолком в 100 записей) и исходящее распространение недоверенных манифестов.
Кому нужно обновиться до xrpld 3.2.1 и каковы операционные шаги?
Инфраструктурные провайдеры, запускающие узлы XRPL — включая биржи, кастодианов и операторов кошельков — должны обновиться, убедиться, что ПО запущено, а затем выполнить второй перезапуск, чтобы очистить все сохранённые манифесты.
{«@context»:»https://schema.org»,»@type»:»FAQPage»,»mainEntity»:[{«@type»:»Question»,»name»:»Что вызвало необходимость обновления узлов XRP Ledger?»,»acceptedAnswer»:{«@type»:»Answer»,»text»:»31 июля произошёл флуд манифестов валидаторов, вызвавший истощение ресурсов узлов, что потребовало хотфикса xrpld 3.2.1 для смягчения проблемы.»}},{«@type»:»Question»,»name»:»Привёл ли флуд манифестов к потере средств или сбоям консенсуса в XRP Ledger?»,»acceptedAnswer»:{«@type»:»Answer»,»text»:»Согласно данным операционной команды XRP Ledger, во время флуда не было зафиксировано подтверждённых финансовых потерь, изменения транзакций или сбоев консенсуса реестра.»}},{«@type»:»Question»,»name»:»Каковы основные защитные механизмы, введённые в xrpld 3.2.1?»,»acceptedAnswer»:{«@type»:»Answer»,»text»:»Обновление ограничивает размер манифеста, размер пакетов сообщений, рост кэша для неизвестных ключей (с потолком в 100 записей) и исходящее распространение недоверенных манифестов.»}},{«@type»:»Question»,»name»:»Кому нужно обновиться до xrpld 3.2.1 и каковы операционные шаги?»,»acceptedAnswer»:{«@type»:»Answer»,»text»:»Инфраструктурные провайдеры, запускающие узлы XRPL — включая биржи, кастодианов и операторов кошельков — должны обновиться, убедиться, что ПО запущено, а затем выполнить второй перезапуск, чтобы очистить все сохранённые манифесты.»}}]}
Статья подготовлена при содействии искусственного интеллекта и проверена редакционной командой.

