Twelve Minutes, $286 Million Gone: The Case for Push Alerts
By @CoinMarketMan - 11-Aug-2026
Двенадцать минут, $286 миллионов исчезли: аргумент в пользу push-уведомлений
1 апреля 2026 года атакующие вывели $286 миллионов из Drift Protocol примерно за 12 минут. Сам дренаж был стремительным. Подготовка к нему — нет. Устойчивые nonce-аккаунты появились в блокчейне за девять дней до того, как эксплойт сработал. За пять дней до этого выполнилась миграция мультисига. Кошелёк атакующего был создан за восемь дней до дренажа, с тестовым переводом из хранилища Drift.
Каждое из этих событий было видно в блокчейне. Ни одно из них не спровоцировало алерт.
Эта статья о том, какой инфраструктуры не хватало: push-мониторинг, который срабатывает при появлении аномальной on-chain активности, вместо того чтобы ждать, пока кто-то вручную откроет дашборд. Эксплойт Drift — учебный пример. Урок применим к каждому разработчику, маршрутизирующему пользовательские средства через инфраструктуру perp DEX.
Подготовка была громче самого дренажа
Постмортем Drift и анализ от Elliptic обнажили намеренную многонедельную фазу подготовки. Северокорейские хакеры, аффилированные с государством (атрибутированные с «умеренно-высокой уверенностью» группе UNC4736, той же, что стоит за взломом Radiant Capital в октябре 2024 года), месяцами выстраивали доверие с участниками Drift через социальную инженерию. Но финальная on-chain подготовка оставила явные следы.
23 марта на Solana были созданы четыре устойчивых nonce-аккаунта. Устойчивые nonce позволяют подписывать транзакции сейчас и выполнять их позже без срока действия. 27 марта выполнилась миграция мультисига Security Council, сменив подписантов без timelock. 1 апреля две транзакции с разницей в четыре слота захватили административный контроль, внесли в белый список сфабрикованный токен CVT в качестве залога и опустошили хранилища.
Социальная инженерия была невидима. On-chain подготовка — нет. Система push-уведомлений, отслеживающая изменения admin-ключей, создание nonce-аккаунтов и добавление залогов в белый список, сработала бы за несколько дней до начала дренажа.
Поллинг — ложное чувство безопасности
Большинство разработчиков, интегрирующихся с DeFi-протоколами, полагаются на поллинг: скрипт, который с определённым интервалом обращается к API-эндпоинту и сравнивает ответ с предыдущими значениями. Если что-то выглядит подозрительно, он пишет в лог. Возможно, кто-то его прочитает. Возможно, нет.
У поллинга три структурных проблемы применительно к мониторингу безопасности:
- Задержка умножает риск. Рассмотрим типичный интервал поллинга в 15 минут: аномалию можно обнаружить от 0 до 15 минут после её возникновения, со средней задержкой около половины интервала. Дренаж Drift занял примерно 12 минут. При таком ритме поллинга деньги могут исчезнуть ещё до первой проверки.
- Поллинг — это pull, а pull требует, чтобы кто-то смотрел. Если ваш скрипт мониторинга падает в 2 часа ночи, никто не заметит до утра. Push-уведомления доставляются в Slack, Discord, Telegram или на пейджер независимо от того, следит ли кто-то активно.
- Поллинг генерирует шум. Постоянные проверки и сравнение дельт порождают ложные срабатывания в периоды обычной рыночной волатильности. Webhook-алерты срабатывают только при достижении конкретного порога, а значит, каждый алерт заслуживает внимания.
Разница между поллингом и push — это разница между ежемесячной проверкой батарейки в детекторе дыма и детектором, который кричит, когда есть дым. Оба подхода предполагают мониторинг. Но только один работает, когда вы спите.
Как выглядит архитектура push-алертов для разработчиков
Функциональная система алертов для разработчиков perp DEX требует трёх слоёв. Каждый слой перехватывает отдельную категорию рисков, и отсутствие любого из них оставляет брешь.
Слой 1: мониторинг управления протоколом
Именно этого слоя полностью не хватало Drift. Он отслеживает изменения в структуре управления протоколами, с которыми вы интегрированы:
- Ротации admin-ключей или смена подписантов мультисига
- Изменения timelock
- Добавление новых типов залогов в белый список
- Переназначение провайдеров оракулов
В случае Drift миграция мультисига 27 марта и добавление CVT в белый список 1 апреля оба спровоцировали бы governance-алерты. Программа STRIDE Solana Foundation теперь обеспечивает круглосуточный мониторинг угроз для протоколов с TVL свыше $10 миллионов — это шаг в правильном направлении. Но разработчики не должны полагаться на Solana Foundation в вопросе контроля своих интеграций. Эта ответственность лежит на команде, создающей продукт.
Слой 2: мониторинг on-chain поведения
Этот слой отслеживает поведение трейдеров и кошельков, которое нередко меняется ещё до публичного подтверждения эксплойта. Когда smart money начинает выходить из протокола, паттерн виден в когортных данных раньше, чем новости появятся в Twitter.
HyperTracker классифицирует каждый кошелёк на Hyperliquid по 16 поведенческим когортам: восемь по размеру (от Shrimp до Leviathan) и восемь по всей истории PnL (от Giga-Rekt до Money Printer). Во время событий заражения опытные когорты — Whale, Tidal Whale и Money Printer — как правило, снижают риски быстрее, чем небольшие розничные когорты. Это расхождение между когортными группами служит опережающим индикатором стресса протокола.
Наши данные обновляются каждые 5 минут. Webhook, настроенный на срабатывание при снижении экспозиции когортами Money Printer или Smart Money свыше заданного порога, даёт разработчикам поведенческий ранний предупредительный слой, который сырые ценовые фиды не способны воспроизвести.
Слой 3: инфраструктура push-доставки
Обнаружение без доставки — это просто логирование. Третий слой — это сантехника, которая доставляет алерт человеку (или автоматизированной системе) достаточно быстро, чтобы успеть принять меры.
- Webhooks отправляют HTTP POST-запросы на любой эндпоинт в момент превышения порога. Разработчик может маршрутизировать их в Slack, Discord, PagerDuty или напрямую в автоматизированный скрипт закрытия позиций.
- WebSocket-подписки поддерживают постоянное соединение и доставляют обновления в почти реальном времени — с задержкой в секунды, а не минуты.
Тариф Flow HyperTracker ($799/мес) включает webhook-доставку, а тариф Stream ($1,999/мес) добавляет WebSocket-доступ. Разработчики на этих тарифах могут подключить алерты о сдвигах когорт напрямую к своей инфраструктуре, чтобы система реагировала ещё до того, как кто-то откроет дашборд.
Правила алертов, которые позволили бы обнаружить атаку на Drift
Вот конкретный набор правил мониторинга, применённый ретроспективно к таймлайну Drift. Каждое правило соответствует конкретному on-chain событию, предшествовавшему дренажу.
| Правило | Триггерное событие | Таймлайн Drift | Время до дренажа | | --- | --- | --- | --- | | Смена admin-ключа | Ротация подписантов мультисига или миграция | Миграция 27 марта | 5 дней | | Создание nonce-аккаунта | Новый устойчивый nonce, инициализированный известным адресом протокола | Настройка nonce 23 марта | 9 дней | | Добавление нового залога в белый список | Ранее неизвестный токен добавлен как принятый залог | 1 апреля, CVT в белом списке | Минуты (в той же цепочке транзакций) | | Пик вывода из хранилища | Отток, превышающий исторический дневной средний показатель в необычное количество раз (например, в 5 раз и более) | 1 апреля, $286M выведено | Во время дренажа | | Расхождение при снижении рисков когортами | Крупные опытные когорты снижают экспозицию, пока небольшие когорты держат позиции | Заражение после эксплойта | Часы (вторичный эффект) |
Первые два правила сработали бы за несколько дней до дренажа. Третье — в ходе самой атаки. В совокупности они дают разработчику несколько шансов приостановить интеграции, предупредить пользователей или вывести средства до того, как протокол будет опустошён.
Как подключить когортные алерты к своему стеку
Для разработчиков на Hyperliquid эндпоинт когортных метрик HyperTracker возвращает данные о позиционировании всех 16 когорт по любому активу. Паттерн реализации push-алерта выглядит следующим образом:
- Базовая линия: запрашивайте эндпоинт когортных метрик с обычным интервалом обновления. Сохраняйте нетто-позицию лонг/шорт когорт Money Printer и Smart Money как базовую линию.
- Порог: задайте процентное изменение от базовой линии, при котором следует срабатывать алерт. Правильный порог зависит от нормальной волатильности актива. Начните с редко срабатывающего значения и постепенно снижайте его.
- Доставка: при превышении порога отправляйте webhook на ваш алерт-эндпоинт. На тарифах Flow и Stream webhook-инфраструктура HyperTracker берёт доставку на себя. На более низких тарифах оберните логику поллинга в лёгкий сервис, который проверяет данные каждые 5 минут и отправляет собственные уведомления.
# Pseudocode: cohort shift alert
baseline = get_cohort_metrics("BTC", cohort="smart-money")
current = get_cohort_metrics("BTC", cohort="smart-money")
if abs(current.net_long - baseline.net_long) > threshold:
fire_webhook({
"alert": "smart-money-shift",
"asset": "BTC",
"direction": "de-risking" if current.net_long < baseline.net_long else "accumulating",
"magnitude": abs(current.net_long - baseline.net_long)
})
Псевдокод прост, потому что сложная часть — классификация каждого кошелька по поведенческим когортам и вычисление позиционирования на уровне сегментов — выполняется API. Разработчик, пытающийся воспроизвести это из сырых данных Hyperliquid, был бы вынужден выстроить весь классификационный конвейер, который, как правило, обходится дороже $10 000 в месяц на инфраструктуру ещё до отправки первого алерта.
Выстройте алертную инфраструктуру на основе когортной аналитики
16 поведенческих когорт HyperTracker классифицируют каждый кошелёк на Hyperliquid по размеру и всей истории PnL. Webhook- и WebSocket-доставка доступны на тарифах Flow и Stream. Начните с бесплатного тарифа, чтобы изучить данные, а затем подключите push-алерты к своему стеку.
Отрасль движется в сторону push
Взлом Drift ускорил переход, который уже начался. Solana Foundation запустила STRIDE с круглосуточным мониторингом угроз для соответствующих протоколов. Solana Incident Response Network (SIRN) теперь координирует быстрое реагирование с участием security-фирм, включая Asymmetric Research, OtterSec и Neodyme.
Но институциональные сети реагирования защищают протоколы. Они не защищают разработчиков, интегрирующихся с этими протоколами. Если вы маршрутизируете пользовательские сделки через perp DEX, ваша ответственность за мониторинг распространяется не только на ваши собственные смарт-контракты, но и на архитектуру управления каждого протокола в вашей цепочке зависимостей. Это означает push-алерты на изменения admin-прав, модификации залогов и поведенческие сигналы — доставляемые на эндпоинты вашей команды за секунды, работающие вне зависимости от того, следит ли кто-то за дашбордом.
Атакующие Drift потратили месяцы на социальную инженерию и дни на on-chain подготовку. На сам дренаж им понадобилось 12 минут. Система push-алертов не предотвратила бы социальную инженерию. Но она превратила бы 12 минут тишины в 12 минут воющих сирен — а для разработчиков, зависящих от целостности протокола, это разница между потерей пользовательских средств и их выводом в безопасность до того, как хранилище опустеет.
Стройте систему, которая кричит.