Кратко

  • Сопровождающие XRP Ledger раскрыли и исправили критическую ошибку переполнения платёжного движка, о которой сообщили через программу вознаграждения за обнаружение ошибок в сентябре; она могла позволить злоумышленнику создать поддельные XRP.
  • Этот недостаток оставался незамеченным с 2015 года, поскольку ни один обычный платёж не вызывает его, а проверка безопасности реестра «XRP не создано» использовала ту же самую сломанную арифметику.
  • Нет доказательств того, что ошибка когда-либо использовалась, говорят разработчики XRP Ledger.

Разработчики, стоящие за XRP Ledger, раскрыли и исправили критическую уязвимость, которая, если бы осталась без внимания, могла позволить злоумышленнику создать XRP из воздуха — недостаток, который оставался неактивным в коде сети около десяти лет.

В опубликованном в пятницу раскрытии сопровождающие реестра сообщили, что исследователь сообщил об ошибке через программу вознаграждения за обнаружение ошибок XRPL в сентябре. Проблема заключалась в целочисленном переполнении в платёжном движке — части программного обеспечения, которая обрабатывает платежи.

Myriad: Куда движется XRP дальше? Нажмите, чтобы сделать свой прогноз.
Myriad: Куда движется XRP дальше? Нажмите, чтобы сделать свой прогноз.

Когда один платёж поглотил сотни специально созданных предложений из книги заявок, сумма, которую должен был заплатить покупатель, превысила максимальное значение, которое система могла сохранить, и «завернулась» до крошечного числа. Движок полностью выплатил каждому продавцу, но почти ничего не списал с покупателя, а разница составила вновь созданные XRP, которых никогда не должно было существовать.

Хуже того, встроенная в реестр проверка безопасности, предназначенная для подтверждения того, что ни одна транзакция не создаёт XRP, использовала ту же ошибочную арифметику, поэтому она точно так же завернулась и ничего не обнаружила. Сопровождающие заявили, что злоумышленник мог бы создать в одной транзакции XRP, которые можно тратить, намного превышающие общий объём предложения токена, а затем переместить их, обменять или отправить на биржи.

BitcoinBTC · USD

$82,731−2.98%

Oct 5Oct 7Oct 9Oct 10Oct 12

$86.6k$84.6k$82.7k$80.7k

24h HighHigh$84,231

24h LowLow$82,379

VolVol$1.0B

Рыночные прогнозыКоэффициенты от Myriad

Сегодня$82,000 до $84,000$82k–$84k98% шанс

→

Купить Bitcoin за USDT

Работает на Jupiter

Данные о ценах от CoinGeckoCoinGeckoБольше Bitcoin новостей и прогнозов →

Инженеры RippleX подтвердили, что ошибка присутствовала с момента написания текущего платежного движка в 2015 году и осталась незамеченной, поскольку ни один обычный платеж даже близко не подходит к тому, чтобы вызвать переполнение.

Команда заявила, что нет никаких доказательств того, что уязвимость когда-либо использовалась. Исправление было выпущено в версии 3.4.1 25 сентября, и в тот день более 80% доверенных валидаторов сети работали на этой версии.

Примечательно, что патч обошёл обычный процесс внесения поправок в реестр, который требует, чтобы валидаторы проголосовали и подождали две недели до вступления изменения в силу, — это первый случай, когда изменение в обработке транзакций было намеренно выпущено таким образом с момента введения системы более десяти лет назад. Сопровождающие заявили, что серьёзность проблемы оправдывала это, поскольку исправление с открытым исходным кодом раскрыло бы ошибку, оставив её эксплуатируемой в течение нескольких недель.

Это раскрытие перекликается с испугом из-за подделки монет, который потряс Zcash в этом году, когда приватная монета спешно исправляла ошибку корректности в своём защищённом пуле, которая могла позволить создавать поддельные монеты. Тот эпизод обрушил ZEC, прежде чем обновление Ironwood в сети решило проблему.

XRP не избежал последствий этой недели. В понедельник токен торговался на уровне $1,38, снизившись на 1,6% за 24 часа — худший результат среди основных криптовалют, и упав на 9,4% за последние семь дней.