SlowMist раскрыла уязвимость Liquid Network: злоумышленник выпустил 3"998,5 LBTC без обеспечения, 598,5 BTC все еще не возвращены

По данным Odaily Planet Daily, компания SlowMist сообщила в X, что 6 сентября Liquid Network подверглась атаке из-за уязвимости, связанной с коллизией ключа кэша при проверке rangeproof. Злоумышленник без соответствующих BTC peg-in выпустил около 3"998,5 LBTC и в течение нескольких минут вывел их в Bitcoin mainnet через peg-out, обменяв на BTC. После инцидента в peg-кошелек Liquid Federation было возвращено около 3"400 BTC, но примерно 598,5 BTC по-прежнему остаются под контролем атакующего. SlowMist уточнила, что первопричина связана с ключом кэша проверки rangeproof в Elements: при конкатенации нескольких полей переменной длины не добавляется префикс длины, из-за чего разные комбинации параметров могут формировать одинаковые ключи. Этим воспользовались атакующие, сформировав транзакции, которые вызывали коллизии кэша. В результате узлы получали из кэша результат "проверка пройдена" и обходили как вызов функции secp256k1_rangeproof_verify, так и проверку минимальной суммы, что приводило к принятию выходов, не обеспеченных реальными активами, и позволяло завершить выпуск LBTC. SlowMist заявила, что отследила движение средств в Bitcoin-сайдчейне и завершила анализ инцидента.