Атака на блокчейн: Eclipse
Если вы следите за децентрализацией, то вы уже знаете, насколько значительной она стала. За децентрализацией определенно будущее. Финансовые предприятия делают все возможное, чтобы внедрить криптовалюты любым способом или в любой форме. Наиболее привлекательным аспектом криптовалют является их общая безопасность.
Существует мнение, что криптовалюты, благодаря децентрализации, являются наиболее безопасными и недоступными сущностями. Поскольку все это опирается на технологию блокчейн, сам факт того, что она остается неизменной, придает всему сценарию определенное преимущество в плане безопасности.
Кроме того, попытка взлома определенной криптовалюты или децентрализации будет встречена ожесточенным отпором, потому что для любого потенциального изменения любого параметра технологии блокчейн должен быть достигнут консенсус. Это означает, что все валидаторы, участвующие в проверке транзакций, должны прийти к консенсусу и согласиться с тем, что транзакция действительно произошла, чтобы она стала активной частью блокчейна. Это лишь доказывает надежность технологии блокчейн и ее устойчивость к взломам или любым киберугрозам, которые попирают само определение безопасности.
Согласно Coinmarketrate.com, технология блокчейн представляет собой совокупность множества пользовательских узлов, которые работают согласованно для подтверждения подлинности транзакций, происходящих в сети. Информация передается между этими узлами по принципу «равный-равному», что создает децентрализованную сетевую систему, в которой ни один пользователь не имеет превосходства над другим. Существуют частные и публичные блокчейны.
В публичных блокчейнах нет никаких фильтров, когда дело доходит до присоединения людей к сети, в то время как частные блокчейны в буквальном смысле более приватны, и они просто не позволяют любому человеку или случайному пользователю подключаться к сети, там есть надлежащий процесс проверки, и пользователь, который хочет подключиться, должен иметь ключ безопасности или закрытый ключ, который он вводит для подключения к сети. Именно так работают частные и публичные системы блокчейн. Во время инициации атаки хакер собирается изолировать потенциального пользователя, работающего в качестве валидатора, от сети блокчейн.
Цель атакующего здесь — получить представление целевого пользователя о пиринговой сети, чтобы подготовиться к началу более плотных атак или инициировать общий сбой в сети. Существует серьезное сходство между атакой Eclipse и атаками Sybil, но конечная цель у них разная.
Разница, с другой стороны, заключается в том, что в начале атаки скомпрометирован только один узел, а затем атака переходит от одного узла к другому, захватывая всю сеть в форме “затмения”. В то время как при атаке Sybil вся сеть взламывается за один раз. Единственное, что требуется злоумышленнику для успешной атаки Eclipse — это создать как можно больше скомпрометированных узлов в сети.
Все эти узлы будут работать как мистификация, в то время как другие пользователи считают их законными. В конце цикла проверки каждой транзакции тот узел, который нашел ответ на сложную математическую задачу, должен поделиться результатом с остальными узлами. Не зная, что большинство узлов нелегитимны и являются обманщиками, они будут делиться информацией и с ними, тем самым предоставляя доступ злоумышленникам на всех возможных уровнях.
Даже если существуют меры защиты от атаки Sybil, поскольку она более опасна, чем атака Eclipse, злоумышленники перекроют системы обслуживания ради атаки Eclipse. Следовательно, эти меры защиты не смогут предотвратить атаки Eclipse в долгосрочной перспективе.
В ходе развития атаки Eclipse злоумышленник попытается перенаправить все соединения предполагаемых участников сети, как входящие, так и исходящие, с потенциально безопасных узлов на узлы-мистификаторы, подготовленные и установленные злоумышленником. Это изощренное действие изолирует цель от обычной сети. Когда новый пользователь присоединяется к сети, он присоединяется не к легитимной сети, а к той, которую разработал злоумышленник. Поскольку новый пользователь отключается, пытаясь получить доступ к оригинальной книге блокчейна, изолированный узел, к которому присоединился пользователь, может быть еще больше обманут преступником.
Это может привести к подтверждению незаконных транзакций, когда пользователь может считать, что он перевел некоторую сумму из своего кошелька и получил некоторую сумму, в то время как в буквальном смысле он ничего не сделал. Также возможны сбои в майнинге, связанные с атакой затмения. Нынешняя структура основной сети блокчейна поможет определить, как и в какой степени может произойти этот эффект блокчейна.
Как работает атака Eclipse?
Чтобы полностью понять, как происходит атака Eclipse, необходимо представить себе идею сети блокчейн. Она представляет собой бисероподобное продолжение узлов, которые связаны между собой по принципу «равный-равному». Все эти узлы соответствуют конкретным вычислительным элементам, которые контролируются пользователями, являющимися, в аккумулирующем смысле, самим блокчейном выделенной криптовалюты. Злоумышленники, которые хотят провести атаку на блокчейн, артистично собираются использовать либо фантомную сеть, либо ботнет, чтобы иметь возможность поставить под угрозу безопасность конкретного узла сети и перекрыть его.
Атака на конкретный узел может быть вызвана тем, что его безопасность минимальна или почти нулевая, и когда атака успешна, этот конкретный узел закрывается от нормальной сетевой активности. Это означает, что любой пользователь, который подключится к сети и окажется на скомпрометированном узле, будет думать, что он находится на нужном узле, в то время как он будет полностью отдан на милость злоумышленника.
Существуют ограничения пропускной способности, которые не позволяют всем этим узлам, присутствующим в сети блокчейн, соединяться друг с другом и передавать информацию последовательным образом. Поэтому при обрыве связи от одного узла к другому конкретный узел или раздел блокчейна может быть серьезно скомпрометирован.
Злоумышленник собирается использовать доступные узлы, к которым отскакивает пользовательское соединение, для компрометации пользовательской сети. Получив доступ к пользовательской сети, злоумышленник может запустить свою собственную сеть с узла-хоста и затем нацелиться на целевые узлы с несколькими точками Интернет-протокола. Это позволит потенциальной цели соединиться с созданной сетью, когда она как бы переподключится к исходной сети.
Ни пользователь, ни система блокчейна не будут знать, что у них в цепи находится скомпрометированный узел, и будут продолжать вести себя так, как будто ничего необычного не произошло. Все, что остается злоумышленнику — это дождаться, пока цель снова соединится со скомпрометированными узлами, и если произойдет какая-то задержка с подключением пользователя к сети. Если это так и происходит, то злоумышленник начнет DDoS-атаку, полностью вытесняя пользователя из сети; таким образом, цель будет вынуждена снова подключиться к сети.
Наиболее тревожным элементом атаки Eclipse является то, что как только целевой узел переходит под контроль злоумышленника, тот же самый злоумышленник продолжает подавать на него ложные данные. На протяжении большей части действия жертва остается в полном неведении о том, что конкретная точка действительно была скомпрометирована. Именно это делает данную атаку такой изощренной и коварной. Ниже перечислены некоторые последствия, которые атака «затмения» может повлечь за собой для крипто-проектов и их систем блокчейн;
- Перебои в работе майнеров
Когда речь идет о добавлении блоков в блокчейн, существует надлежащий контроль и баланс. Это означает, что даже после атаки затмения те блоки, которые не содержат законных данных, могут быть так же легко удалены из блокчейна. Но во время атаки затмения некоторые блоки, которые являются легитимными и должны быть включены в блокчейн, не попадают в него, потому что атакующий пытается скрыть тот факт, что блок был добыт нелегитимным пользователем/узлом.
Это может ввести пользователя в заблуждение и заставить его отдать свои вычислительные мощности и время для обработки или добычи блоков, которые уже были скомпрометированы. Таким образом, злоумышленник повышает свой собственный хешрейт. Он знает, что жертва будет отделена от оригинальной сети блокчейн, и, выиграв эту возможность, он может начать атаки на других майнеров сети и даже запустить атаку на пятьдесят один процент сети, которая в итоге приведет к фатальным последствиям.
- Атака с двойной тратой
Поскольку часть блокчейна была скомпрометирована и атакующий находится во главе ее, любая жертва, которая соединяется с этой отброшенной частью сети блокчейна, может быть введена в заблуждение и направлена на то, чтобы поверить во что угодно. Это идеальная иллюзия, которую злоумышленник может контролировать любым потенциальным способом. Это означает, что жертва может быть введена в заблуждение и заставить принять транзакцию либо с нелегитимными данными, либо с данными уже подтвержденной и зарегистрированной транзакции в официальной сети блокчейн.
Такие атаки известны как атаки двойной траты, когда жертву вводят в заблуждение, заставляя принять транзакцию, которая уже была принята кем-то другим и уже подтверждена в сети. Когда атака eclipse закончится, испорченные данные все еще будут там, и это создаст много проблем не только для сети, но и для законных пользователей, участвующих в финансовой деятельности в тот период времени, когда сеть была взломана.
Атака Eclipse и ее последствия
Когда преступник просто атакует пользователя в сети блокчейн, у него может быть скрытый мотив. Обычно у злоумышленников, которые используют атаку Eclipse, на уме что-то другое, они хотят внедрить более сложную серию последовательных атак, а атака «затмение» будет работать только как шлюз для этого.
- Двойные траты с нулевым подтверждением
Потенциальный пользователь сети блокчейн может подвергнуться риску атаки двойной траты, если он подтвердит транзакцию, которая не имеет подтверждения или записи о том, что она когда-либо происходила или была подтверждена в сети блокчейн. Согласно этому принципу, транзакция уже была записана и передана другим майнерам и валидаторам, но отправитель все равно не может инициировать совершенно новую транзакцию и использовать эти средства для траты где-либо еще. Двойная трата может оставаться проблемой для пользователя до тех пор, пока данная транзакция не пройдет через блокчейн, а затем не будет зафиксирована в оригинальной сети блокчейн.
Иногда новые транзакции с возможной более высокой комиссией также могут быть включены в среду блокчейна, чтобы аннулировать транзакции, произошедшие ранее. Самым рискованным элементом всей этой торговли является то, что некоторые предприятия могут продолжать принимать эти транзакции без какого-либо предварительного подтверждения, и это является проблемой в долгосрочной перспективе.
- Двойные траты при N-подтверждении
Двойные транзакции с N-подтверждением отчасти похожи на транзакции с 0-подтверждением, но для того, чтобы злоумышленник полностью и последовательно осуществил такую транзакцию, потребуется гораздо более сложная подготовка. Многие компании, связанные с цифровыми финансами, имеют привычку задерживать новые платежи или считать недействительными недавние, особенно если есть конкретные транзакции, которые еще предстоит провести; это делает их уязвимыми для такого рода атак. Злоумышленники в этом конкретном сценарии смогут атаковать не только торговцев, но и майнеров.
Они могут открыть невыполненный заказ у продавца и передать эту транзакцию майнерам, которые пострадали во время атаки. Это приведет к тому, что транзакция будет подтверждена и затем в конечном итоге добавлена в блокчейн. Но цепочка, на которой происходит передача этой информации, не является легитимной.
Обе стороны будут считать, что транзакция действительна и прошла, но на самом деле это не так. Затем злоумышленник сможет предоставить эту конкретную версию блока продавцу, где продавец будет думать, что платеж уже прошел, а он, в свою очередь, выпустит товары или услуги.
Узел затмения в сети может привести к появлению множества других узлов, и они также начнут работать, поскольку жертва не будет знать ни о чем необычном или о том, что она была изначально вырезана из первоначальной сети. Майнеры продолжают добывать новые блоки, как будто ничего не произошло, а когда происходит синхронизация с другими узлами, эти блоки добавляются жертвой, которая была отрезана от первоначальной сети.
Крупномасштабные атаки eclipse, выполняемые на нескольких майнеров одновременно, в конечном итоге могут инициировать атаку на пятьдесят один процент. Самый элементарный способ остановить атаки eclipse — это внедрить некий процесс проверки, в ходе которого все входящие и исходящие соединения будут сканироваться, чтобы убедиться, что они действительно безопасны.
Еще одна вещь, которую можно практиковать — это устанавливать соединения только с теми исходящими источниками, которые доступны конкретным узлам, которым блокчейн-сущность может доверять, и разработать белый список этих пиров в сети. Это самый элементарный способ предотвратить атаку eclipse и дальнейшее продолжение этой драмы.