Сб. Ноя 27th, 2021
    Sybil Attack, Free TON

    В 1973 вышла книга, а позже и театральная постановка — “Сибилла”, главная героиня которой, ввиду диссоциативного расстройства психики, считала себя разными людьми.

    К нашей теме это не имело бы никакого отношения, если бы в 2002 году сотрудник Microsoft Reasearch Брайан Зил не предложил назвать одну из схем атак на информационные системы, когда у атакующего есть множество контролируемых аккаунтов, действующих согласованно, именем героини произведения.

    Атака Сибиллы в одноранговых сетях — это такое действие злоумышленника, при котором жертва подключается только к тем узлам, которые контролирует злоумышленник.

    Атакующий создает новые узлы в одноранговой сети, которые постепенно “окружают” атакуемый узел. Так как каждый узел хранит и обновляет свой собственный “рейтинг” соседних узлов, через некоторое время он больше доверяет тем, кто дольше и качественнее предоставлял ему данные. Создать новый идентификатор узла в одноранговой сети ничего не стоит, поэтому атакующий может реализовывать разные стратегии “окружения”, создавая новые идентификаторы быстрее, чем их обнаруживают защитники сети. После того как узел получает данные только с узлов, контролируемых злоумышленником, тот может начать предоставлять узлу ложные данные.

    Иллюстрация атаки Сибиллы

    Атака Сибиллы: метаморфозы в зависимости от консенсуса сети

    В блокчейнах атака Сибиллы имеет свои особенности:

    • если нападающий захватил контроль над соседними узлами, он может отказаться от приема или передачи данных, эффективно блокируя атакуемую ноду;
    • когда атакующий контролирует большое количество узлов, он может блокировать отправку транзакций, создать на атакуемых узлах иллюзию отставания сети или предоставлять заранее заготовленные ложные данные;
    • даже недолгое “придерживание” транзакции в пиринговой сети атакующий может использовать для frontruning-а: атакующий видит какую сделку хочет заключить атакуемый и проводит свою транзакцию раньше него; 
    • в случае контроля атакующим большого hashrate (PoW сети) или большого количества монет (PoS сети), он может обманывать атакуемый узел и на уровне блокчейна, вплоть до проведения атаки double spend.

    Атаки Сибиллы опасны в любых безконсенсусных одноранговых сетях, таких как TOR, bitTorrent, IPFS. В них атака может привести к деанонимизации пользователя или блокировке протокола.

    Атака Сибиллы имеет место и в DeFi и в экономических протоколах. Например, алгоритм защищается от атаки “китов” — сделок, оперирующих крупными объемами токенов, при помощи большой комиссии на такие операции. В этом случае богатый атакующий просто разделяет свой баланс на тысячи аккаунтов и проводит атаку их согласованными действиями. Атака “китов” и атака Сибиллы — это две стороны одной монеты: с одной стороны атака проводится за счет малого числа аккаунтов с внушительными балансами, а с другой — большим числом аккаунтов с небольшим балансом.

    Примеры атаки Сибиллы

    В 2014 году прошла успешная атака Сибиллы на сеть TOR, которая привела к деанонимизации большого количества пользователей.

    В 2020 году выяснилось: ранние версии кошелька Electrum для криптовалюты Bitcoin имеют уязвимость. Разработчики Electrum разрешили пользователям обращаться к серверам, которые не находятся под контролем Electrum. Это создало благодатную почву для того, чтобы провести атаку Сибиллы. Один из пользователей Electrum в результате потерял 1400 BTC.

    А что же Free TON?

    Чтобы разобраться в вопросах уязвимости Free TON к такому типу атак, мы обратились к эксперту по безопасности децентрализованных решений, директору по исследованиям компании MixBytes Сергею Прилуцкому:

    • Сергей, скажите существует ли теоретическая возможность атаки Сибиллы в сети Free TON, например, через контроль над несколькими узлами валидатора?

    Да, существует, как и в любой децентрализованной сети. Атака на консенсус является стандартной для любых PoS сетей, в том числе и для TON, и требует контроля над большим количеством токенов у атакующего.

    А вот сетевая атака Сибиллы на p2p-сеть в TON сложнее, чем в других сетях (так же, как и блокировка сети) — ноды TON могут свободно менять свои идентификаторы ADNL внутри оверлейной сети (и постоянно делают это принудительно в конце каждого цикла валидации), а также могут свободно менять свои IP-адреса, “ускользая” из-под прицела атакующего.

    • Влияет ли шардирование сети на возможность осуществления этой атаки?

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

    12
    0