Как Solana нейтрализовала атаку мощностью 6 Тбит/с с помощью специального протокола формирования трафика, который делает невозможным масштабирование спама
Когда сеть хвастается своей пропускной способностью, на самом деле она хвастается тем, сколько хаоса может проглотить, прежде чем захлебнется. Вот почему самая интересная часть последнего «стресс-теста» Solana заключается в том, что здесь вообще нет никакой истории.
Сеть доставки под названием Pipe опубликовала данные, согласно которым недавний шквал атак на Solana достиг примерно 6 терабит в секунду, и соучредители Solana публично подтвердили основную суть этих данных. Если эта цифра верна, то это объем трафика, обычно зарезервированный для крупнейших целей интернета — такого рода вещи, о которых Cloudflare пишет длинные блоги, потому что это не должно быть нормой.
И все же Solana продолжала производить блоки. Не было ни координированного перезапуска, ни группового чата валидаторов, превращающегося в ночной фильм-катастрофу.
Собственный репортаж CryptoSlate об этом инциденте сообщил, что производство блоков оставалось стабильным, подтверждения продолжались, и не было значительного скачка пользовательских комиссий. В обсуждении даже прозвучал контраргумент: SolanaFloor отметила, что один из участников Anza утверждал, что показатель 6 Тбит/с был кратковременным пиковым всплеском, а не постоянной недельной стеной трафика, что важно, потому что «пик» может быть и правдой, и немного театральным.
Такая тонкость допустима. В реальных атаках типа отказа в обслуживании пик часто и есть цель, потому что короткий удар может все равно опрокинуть систему, настроенную на стабильное состояние.
В отчетах о киберугрозах Cloudflare отмечается, что многие крупные атаки заканчиваются быстро, иногда слишком быстро для человеческой реакции, поэтому современная защита должна быть автоматической. Последний инцидент с Solana теперь показывает сеть, которая научилась делать спам скучным.
Что это была за атака и чего на самом деле хотят атакующие?
DDoS — самое примитивное, но эффективное оружие интернета: перегрузить обычный трафик цели, затопив ее мусорным трафиком с множества машин одновременно. Определение Cloudflare прямолинейно: это злонамеренная попытка нарушить обычный трафик путем перегрузки цели или близлежащей инфраструктуры потоком интернет-трафика, обычно исходящего из скомпрометированных систем.
Это версия web2, и именно к ней Pipe апеллирует с графиком в терабитах в секунду. Криптосети добавляют второй, более нативный для крипто вариант: спам, который не «мусорные пакеты на сайте», а «бесконечные транзакции в цепочке», часто потому, что на другой стороне перегрузки есть деньги.
История сбоев Solana похожа на руководство по этой проблеме стимулов. В сентябре 2021 года сеть была недоступна более 17 часов, и ранний постмортем Solana охарактеризовал поток транзакций, генерируемых ботами, как по сути событие отказа в обслуживании, связанное с IDO на Raydium.
В апреле 2022 года официальный отчет о сбое Solana описал еще более интенсивную стену входящих транзакций — 6 миллионов в секунду, при этом отдельные ноды видели более 100 Гбит/с. В отчете говорилось, что не было доказательств классической кампании отказа в обслуживании, а отпечатки больше походили на ботов, пытающихся выиграть NFT mint, где приз получает первый позвонивший.
В тот день сеть прекратила производство блоков и потребовалась координация для перезапуска.
Так чего же хотят атакующие, кроме внимания и удовольствия испортить всем воскресенье? Иногда это банальное вымогательство: заплатите нам, или мы оставим «пожарный шланг» включенным.
Иногда это ущерб репутации, потому что сеть, которая не может оставаться в онлайне, не может достоверно размещать те приложения, которые люди хотят создавать. Иногда это рыночные игры, когда сломанный UX создает странные цены, задержанные ликвидации и вынужденные обходные пути, которые вознаграждают тех, кто готов к хаосу.
В варианте ончейн-спама цель может быть прямой: выиграть mint, выиграть сделку, выиграть ликвидацию, выиграть место в блоке.
Сейчас же ситуация изменилась: у Solana появилось больше способов отказаться от приглашения.
Изменения в дизайне, которые позволили Solana оставаться в работе
Solana стала лучше оставаться онлайн, изменив место, где проявляется боль. В 2022 году сбои имели знакомую форму: слишком много входящих запросов, слишком большая нагрузка на ресурсы нод, слишком мало возможностей замедлить злоумышленников и сопутствующие эффекты, превращающие перегрузку в проблемы с живучестью.
Наиболее важные обновления находятся на границе сети, где трафик поступает к валидаторам и лидерам. Одно из них — переход на QUIC для сетевых коммуникаций, который Solana позже включила в список мер по обеспечению стабильности наряду с локальными рынками комиссий и stake-weighted quality of service.
QUIC — это не магия, но он создан для контролируемых, мультиплексированных соединений, а не для старых схем соединений, которые делают злоупотребления дешевыми.
Более того, документация Solana для валидаторов описывает, как QUIC используется внутри пути Transaction Processing Unit: ограничения на одновременные QUIC-соединения на идентичность клиента, ограничения на одновременные потоки на соединение и лимиты, которые масштабируются в зависимости от доли стейка отправителя. Также описывается ограничение по количеству пакетов в секунду на основе стейка, и отмечается, что сервер может сбрасывать потоки с кодом ограничения, а клиенты должны отступать.
Это превращает «спам» в «спам, который отправляется в медленный ряд». Теперь недостаточно иметь пропускную способность и ботнет, потому что теперь вам нужен привилегированный доступ к мощности лидера, или вы конкурируете за более узкую ее часть.
Руководство разработчика Solana по stake-weighted QoS объясняет это: с включенной функцией валидатор, владеющий 1% стейка, имеет право передавать до 1% пакетов лидеру. Это не позволяет отправителям с низким стейком затопить всех остальных и повышает устойчивость к атакам Sybil.
Другими словами, стейк становится своего рода заявкой на пропускную способность, а не только весом голоса.
Далее идет вопрос комиссий, где Solana пытается избежать ситуации «одно шумное приложение портит весь город». Локальные рынки комиссий и приоритетные комиссии дают пользователям возможность конкурировать за исполнение, не превращая каждый загруженный момент в общесетевой аукцион.
Документация по комиссиям Solana объясняет, как работают приоритетные комиссии через вычислительные единицы: пользователи могут установить лимит вычислительных единиц и необязательную цену за вычислительную единицу, которая действует как чаевые для ускорения приоритезации. Также отмечается практическая особенность: приоритетная комиссия основана на запрошенном лимите вычислительных единиц, а не на фактически использованных, поэтому неаккуратные настройки могут привести к оплате за неиспользованный запас.
Это делает ресурсоемкое поведение более дорогим и дает сети инструмент, чтобы сделать злоупотребления дороже там, где это действительно важно.
В совокупности эти элементы дают другой сценарий сбоя. Вместо потока входящего шума, отправляющего ноды в спираль памяти, у сети появляется больше способов ограничивать, приоритезировать и сдерживать.
Сама Solana, оглядываясь на 2022 год, определила QUIC, локальные рынки комиссий и stake-weighted QoS как конкретные шаги, предпринятые для того, чтобы надежность не жертвовалась ради скорости.
Вот почему уикенд с терабитным трафиком может пройти без реальных последствий: у сети появилось больше автоматических «нет» на входе и больше способов поддерживать очередь для пользователей, которые не пытаются ее сломать.
Все это не означает, что Solana не подвержена тяжелым дням. Даже те, кто аплодирует истории с 6 Тбит/с, спорят о том, что означает эта цифра и как долго она длилась, что вежливый способ сказать, что интернет-измерения запутаны, а право на хвастовство не сопровождается аудиторским отчетом.
И компромиссы никуда не исчезают. Система, которая связывает лучшее обслуживание трафика со стейком, по замыслу более дружелюбна к операторам с хорошим капиталом, чем к валидаторам-энтузиастам. Система, которая остается быстрой под нагрузкой, все равно может стать площадкой для ботов, готовых платить.
Тем не менее, важно, что сеть была спокойной. Ранние сбои Solana были не «люди заметили небольшую задержку». Производство блоков полностью прекращалось, за чем следовали публичные перезапуски и долгие окна координации, включая остановку в апреле 2022 года, на решение которой ушли часы.
В отличие от этого, на этой неделе история такова: сеть оставалась живой, несмотря на то, что трафик якобы достиг масштабов, более привычных для отчетов о киберугрозах Cloudflare, чем для криптоистории.
Solana ведет себя как сеть, которая ожидает атак и решила, что уставать должен атакующий.
Публикация How Solana neutralized a 6 Tbps attack using a specific traffic-shaping protocol that makes spam impossible to scale впервые появилась на CryptoSlate.
Дисклеймер: содержание этой статьи отражает исключительно мнение автора и не представляет платформу в каком-либо качестве. Данная статья не должна являться ориентиром при принятии инвестиционных решений.
Вам также может понравиться
XRP Spot ETFs: ошеломляющий успех с притоком в $1,2 млрд сталкивается с ценовой загадкой
Тяжёлая неделя для производителей аппаратного обеспечения

Срочное предупреждение: Bitcoin может обвалиться ниже $50 000 к 2028 году без квантовой защиты
