Back to Blog

Атака на LI.FI: уязвимость кроссчейн-моста? Нет, дело в непроверенном внешнем вызове!

Code Auditing
March 21, 2022
3 min read

Согласно отчету проекта LI.FI и Twitter-аккаунту Дэниела фон Фанге, мы зафиксировали атаку на LI.FI 20 марта 2022 года. Поскольку подробного технического анализа этой уязвимости не представлено, далее мы проанализируем саму атаку. Мы установили, что первопричиной этой атаки является непроверенный внешний вызов (unchecked external call).

Транзакция атаки

Мы начали с транзакции атаки, чтобы проиллюстрировать процесс нападения. На скриншоте ниже показан результат работы нашей системы визуализации транзакций.

Как видно на изображении выше, весь процесс атаки довольно прост: злоумышленники не использовали вредоносные смарт-контракты и не прибегали к мгновенным займам (flashloan). Единственный шаг, который выполнил атакующий, — вызов функции swapAndStartBridgeTokensViaCBridge(0x01c0a31a) в контракте CBridgeFacet, что привело к переводу различных токенов (например, USDC, MATIC, RPL, GNO, USDT, MVI, AUDIO, AAVE, JRT и DAI) от разных отправителей на EOA-адрес, контролируемый атакующим.

Анализ кода

Затем мы углубились в код целевого логического контракта.

Код функции
Код функции
Код функции
Код функции

Согласно приведенному выше коду, swapAndStartBridgeTokensViaCBridge является точкой входа для кроссчейн-транзакции в исходной сети.

Проект LIFI заявляет, что может находить лучшие маршруты для пользователей с помощью системы Smart Routing, которая работает вне сети (off-chain). В частности, веб-интерфейс вычисляет лучший маршрут и кодирует параметры (включая адрес контракта обмена и путь маршрутизации) в параметры функции swapAndStartBridgeTokensViaCBridge.

Очевидно, что проект LIFI не учел, что эта функция может быть вызвана любым аккаунтом в блокчейне, поскольку она не выполняет никаких проверок параметров, таких как «белый список» или допустимое проскальзывание (slippage). Самое серьезное заключается в том, что контракт CBridgeFacet требует от пользователей предварительного одобрения (approve) токенов, что и поставило средства пользователей под угрозу.

Ущерб

В результате атакующий украл средства пользователей LIFI, которые ранее дали одобрение на использование своих токенов контракту CBridgeFacet, вызвав функцию swapAnStartBridgeTokensViaCBridge, которая, в свою очередь, активировала функции transferFrom для различных токенов. Статистика потерь приведена в таблице ниже. Общие убытки составили около 596 тысяч долларов, что практически совпадает со статистикой от проекта LIFI.

Токен Количество Цена
GNO 0.94 310.22
USDC 202,012.28 0.999655
MATIC 3,144.89 1.46
AUDIO 1,202.37 1.10
AAVE 8.99 149.99
RPL 44.86 31.2
MVI 22.95 131.82
USDT 368,745.29 1
DAI 8,421.49 0.999847
JRT 136,805.06 0.03789613

Уроки

LIFI — это агрегатор кроссчейн-мостов, а данный контракт является входом для кроссчейн-переводов. Уязвимость не связана со сложной кроссчейн-логикой, которая становилась причиной предыдущих инцидентов безопасности в данной сфере. Первопричиной этой атаки является непроверенный внешний вызов — одна из 10 самых распространенных проблем в Solidity.

Поскольку проекты DeFi становятся всё более сложными, разработчикам необходимо уделять больше внимания написанию безопасного кода в дополнение к реализации бизнес-логики. Мы настоятельно рекомендуем проектам НЕ развертывать в блокчейне контракты, не прошедшие аудит.

О компании BlockSec

BlockSec — передовая компания в области безопасности блокчейна, основанная в 2021 году группой всемирно признанных экспертов по безопасности. Компания стремится повысить уровень безопасности и удобства использования для развивающегося мира Web3, чтобы способствовать его массовому внедрению. Для этого BlockSec предоставляет услуги аудита безопасности смарт-контрактов и EVM-сетей, платформу Phalcon для безопасной разработки и проактивного предотвращения угроз, платформу MetaSleuth для отслеживания и расследования транзакций, а также расширение MetaDock для эффективной навигации разработчиков Web3 в криптомире.

На сегодняшний день компания обслужила более 300 уважаемых клиентов, таких как MetaMask, Uniswap Foundation, Compound, Forta и PancakeSwap, и получила десятки миллионов долларов США в двух раундах финансирования от выдающихся инвесторов, включая Matrix Partners, Vitalbridge Capital и Fenbushi Capital.

Официальный сайт: https://blocksec.com/

Официальный аккаунт в Twitter: https://twitter.com/BlockSecTeam

Sign up for the latest updates
~$5.98M Потеряно: Aztec, Raydium и другие | Еженедельник BlockSec
Security Insights

~$5.98M Потеряно: Aztec, Raydium и другие | Еженедельник BlockSec

Еженедельный отчёт о безопасности блокчейна (8–15 июня 2026 г.): 4 инцидента в Ethereum и Solana, общие потери ~$5,98 млн. Aztec Connect: отсутствие валидации входных данных привело к рассинхронизации rollup и L1. Raydium: уязвимость в AMM v3 позволила дренировать 4 пула.

Анализ уязвимости Zcash Orchard | Еженедельник BlockSec
Security Insights

Анализ уязвимости Zcash Orchard | Еженедельник BlockSec

Критическая уязвимость в цепи Orchard Zcash: отсутствие ограничения равенства в гаджете ECC halo2 позволяло незаметно подделывать ZEC через двойное расходование. Уязвимость существовала 4+ лет, обнаружена ИИ-аудитом (Anthropic Opus 4.8, исследователь Тейлор Хорнби), устранена экстренным обновлением NU6.2.

Информационный бюллетень — май 2026 г.
Security Insights

Информационный бюллетень — май 2026 г.

В мае 2026 года в DeFi произошло 3 взлома: Echo Protocol ($76,7 млн, компрометация ключа), StablR ($12,8 млн, брешь в multisig) и Verus-Ethereum Bridge ($11,7 млн, ошибка проверки типов). Общий ущерб — около $101,2 млн.

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit