В понедельник блокчейн-исследователь ZachXBT заявил, что $250 000, которые Ripple заплатила компании Veria Labs за обнаружение ошибки, способной привести к выпуску триллионов XRP, — слишком малая сумма.
Эта ситуация вновь разожгла давнюю критику ZachXBT в адрес Ripple за её отношение к исследователям.
Сколько Ripple заплатила Veria Labs?
12 октября ZachXBT раскритиковал в публикации на X сумму в $250 000, выплаченную Ripple компании Veria Labs. Он написал, что за эту находку Veria Labs и её сооснователь Cayden Liao «должны были получить как минимум семизначную сумму».
ЗакXBT заявил, что эта выплата — часть тенденции, в рамках которой «хорошо финансируемые организации» недоплачивают исследователям безопасности, работающим на благо пользователей.
Он заявил, что 250 000 долларов — слишком маленькое вознаграждение, учитывая, что у платящей организации «в казне миллиарды», и предупредил: недостаточно щедрая выплата может подтолкнуть того, кто обнаружит подобную уязвимость в будущем, воспользоваться ею, а не сообщить о ней.
Ляо, со своей стороны, заявил, что Ripple выплатила Veria максимальное вознаграждение программы — 250 000 долларов — и назвал эту сумму крупнейшей выплатой за уязвимость, полностью обнаруженную ИИ-агентом.
Veria Labs обнаружила критическую ошибку переполнения целого числа в механизме обработки платежей XRP Ledger — коде, который проводит расчёты по сделкам через встроенную в сеть книгу ордеров.
Когда один платёж исполнял сразу множество ордеров, механизм складывал суммы, не проверяя переполнение. Достаточно большая сумма превращалась в крошечное число. Продавцы получали оплату полностью, а с покупателя списывали лишь это крошечное число.
Из-за этой разницы появились новые XRP, которыми можно было расплачиваться наравне с любыми другими.
В реестре есть защитная проверка «XRPNotCreated», которая должна блокировать любые транзакции, создающие новые монеты. Но в ней была похожая ошибка, поэтому она не обнаружила несоответствие.
По словам Veria, её ИИ-агент связал две ошибки, датированные ноябрём 2015-го и февралем 2017-го, и создал работоспособное доказательство концепции. В рамках одной транзакции он зачислил 18,45 триллиона XRP на 256 счетов. Это примерно в 184 раза больше фиксированного предложения XRP в 100 миллиардов. Veria оценила сумму под угрозой почти в полную рыночную стоимость токена — 94 миллиарда долларов — исходя из цены в 1,59 доллара.
Примечательно, что разработчики не нашли никаких признаков использования этой ошибки. В отчёте Ripple объяснялось: для проведения атаки сотни ордеров должны были бы иметь такие цены, какие не выставил бы ни один реальный трейдер.
Veria сообщила об уязвимости 22 сентября через программу вознаграждения за обнаружение ошибок XRPL и получила за это вознаграждение в размере 250 000 долларов.
В споре о выплате Ripple ЗакXBT упомянул 1,5 миллиона долларов, которые Zcash присудила исследователю Тейлору Хорнби.
Хорнби обнаружил ошибку, позволявшую подделывать монеты в защищённом пуле Orchard в Zcash. Из-за неё под угрозой оказались ZEC примерно на 2,3 миллиарда долларов. Он получил вознаграждение в 750 000 долларов и ещё один грант на такую же сумму, одобренный держателями монет в рамках ретроактивного голосования за третий квартал, по итогам которого было распределено около 8,39 миллиона долларов.
Исполнительный директор Shielded Labs Джейсон Макги, подавший заявку на дополнительное вознаграждение, утверждал, что первоначальная сумма составляла лишь около 0,033% от средств под угрозой, тогда как минимальный показатель в аналогичных случаях составлял 0,24%. Он написал, что более высокая награда — это «недорогая страховка» для протокола. Как и уязвимость, обнаруженная Veria, находка Хорнби была сделана с помощью ИИ.
Исправили ли ошибку?
RippleX, инженерная команда Ripple, подтвердила наличие ошибки в тот же день, когда Veria сообщила о ней. Выяснив, что XRP, созданные из-за этой ошибки, действительно можно потратить, команда присвоила ей критический уровень серьёзности. Исправление было включено в код 23 сентября и выпущено в составе xrpld 3.4.1 25 сентября.
Обычно подобное исправление проходит процедуру внесения поправок: более 80% доверенных валидаторов должны поддерживать его на протяжении двух недель подряд. Но на этот раз исправление вступало в силу по мере обновления каждого сервера.
К дню выпуска обновление уже установили более 80% валидаторов из списка Unique Node List по умолчанию.
В отчёте компании говорилось, что это было первое за более чем десять лет изменение обработки транзакций, которое не прошло через систему поправок, поскольку до выпуска исправления уязвимость оставалась бы раскрытой в течение нескольких недель.
Тем не менее задержка с публикацией исходного кода вызвала критику. Джастин Бонс, основатель Cyber Capital, заявил, что XRP «использовал код с закрытым исходным кодом» до публикации полного кода версии 3.4.1.
Инженер RippleX Майукха Вадари ответила на критику, заявив, что прежний подход больше не работает. Она объяснила, что критическое исправление нельзя включить в обычный публичный релиз: злоумышленники сразу же заметили бы его и провели обратную разработку.
Самые выдающиеся умы криптоиндустрии уже читают нашу рассылку. Хотите присоединиться? Будьте с ними.
