Атака Сибиллы (Sybil attack) - многочисленные поддельные идентичности

Атака Сибиллы (Sybil attack) — вид атаки в одноранговой сети, в результате которой жертва подключается только к узлам, контролируемым злоумышленником. Термин предложен в 2002 сотрудником Microsoft Research Брайаном Зилом. Название выбрано в честь псевдонима главной героини книги-бестселлера 1973 года «Сивилла» о лечении диссоциативного расстройства личности.

Атака Сибиллы (Sybil attack): злоумышленники стремятся подорвать сеть, создавая многочисленные поддельные идентичности. Наблюдателю эти личности кажутся отдельными пользователями, но на самом деле все они контролируются одним объектом. В результате злоумышленник имеет значительное влияние на количество голосов и может разрушить или повредить сеть.

Как децентрализованные консенсусные алгоритмы сдерживают атаки Сибиллы

Доказательство работы (PoW), используемое сетью Биткойн, - это модель сопротивления Сибиллы. Чтобы получить вознаграждение, каждая личность в сети должна выполнять непроизвольный и равный объем вычислительной работы. Другими словами, каждая личность Сибиллы должна выполнять столько же работы, сколько и каждая честная личность, что делает атаку Сибиллы слишком дорогой.

В Proof of Stake (PoS) консенсус достигается в сети валидаторов, которые «заблокировали» или «поставили» немалую сумму капитала на определенный период времени. Злоумышленник, который хочет провести атаку Сибиллы на сеть PoS, должен заблокировать как минимум такую ​​же долю, которая заблокирована честными валидаторами.

Хотя начальная стоимость атаки может быть не сразу очевидна (заблокировать капитал -> выполнить атаку -> получить ставку через определенный период), предполагается, что модель PoS работает, потому что:

  • размер капитала, который может поставить злоумышленник, ограничен, поскольку сумма ставки злоумышленника плюс все другие ставки не может превышать общий оборот;
  • выполняя атаку Сибиллы, злоумышленник обесценивает общественное доверие (и ценность) базового протокола / актива, тем самым уменьшая или устраняя любую прибыльность атаки.

Атаки Сибиллы часто путают с атаками Затмения. Однако в последнем случае поддельные удостоверения личности не пытаются полностью ввести сеть в заблуждение; вместо этого они загоняют отдельные узлы в сеть, монополизируя все свои P2P-соединения. Изолируя определенные элементы, атака может отображать им ложное состояние сети. Таким образом, атаки Eclipse затрагивают небольшую часть сети, тогда как атаки Sybil нарушают всю сеть. Вы можете узнать больше об атаках Eclipse здесь:

Eclipse attack (атака затмения)

Люди часто думают, что Биткойн безопасен, если по крайней мере 51 процент майнинговых мощностей является честным, но эта гарантия основана на предположении, что все стороны видят действительные блоки / транзакции. Однако Биткойн полагается на свою собственную одноранговую сеть для доставки своей информации. Следовательно, если вы контролируете одноранговую сеть, вы управляете информационным потоком, а затем можете управлять цепочкой блоков. Злоумышленник атакует одноранговую сеть Биткойн и использует атаку Eclipse "затмевающую информацию", чтобы подорвать безопасность Биткойна.

Атака Eclipse - это средство атаки на децентрализованную сеть, с помощью которого злоумышленник стремится изолировать и атаковать определенного пользователя (ей), а не атаковать всю сеть (как в атаке Сибиллы). Успешная атака Eclipse позволяет потенциальному злоумышленнику изолировать и впоследствии помешать своей цели получить истинную картину реальной сетевой активности и текущего состояния реестра.

Эта атака стала возможной, потому что децентрализованная сеть не позволяет всем узлам одновременно подключаться ко всем другим узлам в сети. Вместо этого для эффективности узел подключается к выбранной группе других узлов, которые, в свою очередь, подключаются к собственной выбранной группе. 

Например, Биткойн по умолчанию имеет 117 входящих TCP-соединений и максимум 8 исходящих TCP-соединений. Эти связи образуют сеть сплетен для распространения транзакций и блоков биткойнов. Атака нацелена только на узлы Биткойн, которые принимают входящие соединения, потому что не все узлы принимают входящие соединения.

Высокоуровневый обзор одноранговой сети Биткойн

Злоумышленник будет стремиться захватить все эти связи. Усилия, необходимые для достижения этого, зависят от конструкции, размера и характера сети, но, как правило, злоумышленник должен контролировать ботнет узлов хоста (каждый со своим собственным IP-адресом) и разрабатывать (по существу, методом проб и ошибок) соседние узлы предполагаемой жертвы. В следующий раз, когда узел жертвы выйдет из системы, а затем снова присоединится к сети (сбросив свои соединения и вынудив их найти новый набор узлов для подключения), злоумышленник имеет хорошие шансы получить контроль над всеми соединениями жертвы.

Как злоумышленники получают прибыль от атаки Eclipse?

После того, как злоумышленник изолировал пользователя, взяв под контроль все исходящие соединения, он может использовать их, например, проведя атаку двойного расходования с нулевым подтверждением. Если пользователь A является злоумышленником, пользователь B является изолированным узлом, а пользователь C является другим сетевым объектом, то пользователь A сможет отправить платеж пользователю C, а затем отправить ту же транзакцию пользователю B. Пользователь B не знает, что эти средства уже потрачены, поскольку все их исходящие соединения проходят через пользователя A, который может подавлять информацию, которую получает пользователь B. Пользователь B примет монеты, и только позже, когда он подключится к «истинной» цепочке блоков, он обнаружит, что их обманули и на самом деле ничего не получили.

Злоумышленник также может использовать атаку eclipse для атаки на саму блокчейн, захватив мощность майнинга изолированного узла (ов). Жертва, видя только реестр, который показывает злоумышленник, будет поддерживать этот вариант цепочки. Если злоумышленник сможет атаковать достаточное количество пользователей (и имея в виду, что некоторые майнеры могут контролировать значительные объемы хэш-мощности), они смогут создать свою собственную цепочку в качестве законной вилки к «истинному» реестру. Получите достаточную поддержку, и это станет бухгалтерской книгой.