Мы продолжаем рассказывать вам обо всех возможных угрозах, которые способны нанести удар по Блокчейну, криптовалютам или вашей конфиденциальности. Сегодня давайте поговорим об Replay Attack и DoS Attack.
Повторная атака
Атака с воспроизведением или повторная атака — одна из наиболее распространенных уязвимостей, влияющих на блокчейны. Эти атаки обычно выполняются во время реализации хард-форка, поскольку именно в это время создаются наилучшие условия для их реализации.
Это происходит, когда злоумышленник совершает перехват и повторную передачу действительных данных, которые проходят через сеть. Это становится возможным, потому что злоумышленники получили действительные учетные данные для сети. По этой причине протоколами сетевой безопасности эта атака рассматривается как обычная передача данных. Таким образом, такого рода атака для злоумышленника простое дело.
Повторные атаки особенно влияют на технологию блокчейн, поскольку она работает как распределенная система. Это связано с тем, что именно эта операционная структура облегчает подобные злонамеренные действия. Все, что вам нужно — это иметь доступ к действительным учетным данным, и чтобы атака была проведена в нужное время, и этого достаточно для достижения успеха.
- Масштаб и последствия повторной атаки
Атака повторного воспроизведения может иметь, в первую очередь, следующую область применения:
- Это позволяет подменить личность еще одного пользователя системы. На этом этапе злоумышленник может эффективно украсть учетные данные для доступа к сети, и выдать себя за пользователя. Таким образом злоумышленник получает доступ ко всей истории действий пользователя. Эта точка является достаточным и необходимым условием для проведения повторной атаки с катастрофическими последствиями.
- Это позволяет создавать атаки отказа в обслуживании (DoS). Злоумышленник может сделать массовую атаку воспроизведения в блокчейне. Этот сценарий возможен из-за потери вычислительной мощности унаследованного блокчейна. По мере того, как мощность устаревшего блокчейна падает, открывается пространство для атаки 51%.
- Это позволяет создавать новые транзакции, которые могут перейти в новый блокчейн и вывести его из строя, если его мощность будет превышена. Другой способ выполнить действие этого типа — воспользоваться слабым местом протокола сообщений в сети P2P. С помощью этой уязвимости вы можете не только совершать повторную атаку, но и управлять сетью, чтобы она прослушивала только сообщения, отформатированные определенным образом.
В обоих случаях существуют ограничения на возможные вредоносные действия. Но, пожалуй, наиболее важным является то, что отправленные данные не могут быть изменены без отклонения сетью.
- Важность и последствия повторных атак
Эти типы атак очень важно учитывать в блокчейн-технологии. Особенно, когда блокчейн проходит через процесс хард-форка. Это связано с тем, что хард-форк открывает возможность более простого выполнения действий такого типа.
В это время одновременно используются два блокчейна с идентичной информацией. Это означает, что одна транзакция, обработанная до хард-форка, становится действительной и для второй сети. В итоге человек, получающий определенную сумму криптовалют от другого человека на старой цепочке блоков, может перейти на другую, воспроизвести транзакцию и обманом передать такую же сумму крипты на свою учетную запись.
Однако такая ситуация возможна только для тех, кто принял участие в хард-форке. Другими словами, новые пользователи, которые создали кошелек после хард-форка, не уязвимы, и не могут так же сами проводить атаки этого типа.
Но эти типы атак могут быть осуществлены за пределами технологии блокчейн. Например, бесконтактные платежные системы или NFC тоже восприимчивы. Чтобы справиться с ними, у них должны быть контрмеры, которые не позволят пользователю выполнить их и таким образом украсть средства.
- Означает ли повторная атака, что злоумышленник контролирует всю сеть?
Атака с воспроизведением только приводит к тому, что злоумышленник получает возможность выдавать себя за чужую личность в сети, и выполнять действия, уже выполненные с ней. Злоумышленник никогда не имеет полного контроля над сетью или возможности перезаписать всю цепочку блоков.
- Защитные меры против этого типа атак
Чтобы предотвратить атаки повторного воспроизведения, разработчики одного из двух блокчейнов после форка могут внести небольшие изменения в правила транзакций.
Для реализации защиты от воспроизведения на уровне протокола требуется хард-форк. Это означает, что для новой, разветвленной версии цепочки намного проще реализовать защиту от воспроизведения, поскольку она уже инициирует хард-форк.
Например, когда Bitcoin Cash отделился от блокчейна Bitcoin, его разработчики добавили специальный маркер (SIGHASH_FORKID) к транзакциям нового блокчейна, чтобы цифровые подписи Bitcoin Cash больше не были идентичны подписям Bitcoin.
Если бы злоумышленник скопировал подпись из транзакции ВТС и отправил ее узлам Bitcoin Cash, она была бы отклонена как недействительная, потому что у нее не было этого дополнительного маркера. Точно так же подписи с дополнительным маркером будут недействительными в цепочке блоков Биткойнов, которая защищает от атак повторного воспроизведения в другом направлении. Поскольку эта форма защиты от воспроизведения предотвращает атаки повторного воспроизведения как на Bitcoin, так и на Bitcoin Cash, она называется двусторонней защитой воспроизведения или «сильной защитой от воспроизведения».
Если двусторонняя защита от воспроизведения предлагается на уровне протокола, как в случае с Bitcoin Cash, то биржи, кошельки и пользователи могут совершать транзакции как с монетами в исходной цепочке, так и в разветвленной цепочке, не опасаясь атак повторного воспроизведения.
Если защита от воспроизведения не предлагается на уровне протокола, все усложняется. Такие сервисы, как кошельки или биржи, обычно временно приостанавливают транзакции в новой цепочке, пока сеть не стабилизируется. Если они решат поддерживать новую цепочку, им придется реализовать собственную защиту от повторного воспроизведения, иначе они рискуют подвергнуться атаке. Обычно это достигается путем смешивания выходных данных транзакций после форка (UTXO), с любыми новыми транзакциями или снятием средств.
Что такое DoS-атаки
Одной из наиболее распространенных атак в компьютерном мире является DoS-атака, с помощью которой киберпреступники стремятся помешать пользователям компьютерной онлайн-системы получить к ней доступ, насыщая ее незаконными запросами на обслуживание.
Это тип сетевой угрозы, которая предназначена для отключения компьютерной системы на время. Простой пример для понимания этого типа атаки:
Представьте себе дискотеку на 200 человек, вход на которую бесплатный. Если кто-то хочет испортить всем вечер, он должен взять с собой своих 200 друзей и, ничего не потребляя и даже не танцуя, оставаться там, пока открыта дискотека, тем самым не давая доступа тем, что реально хочет танцевать. Таким образом, конкурент в реальной жизни совершил DoS-атаку. В информатике такой дискотекой может быть веб-страница, поддерживающая определенное количество одновременных посещений. Если злоумышленник сможет имитировать эти посещения, они будут успешно выполнять эти типы атак, и мешать законным пользователям использовать Интернет.
Эта ситуация не позволяет законным пользователям использовать систему и предоставляемые ею услуги. Эти типы угроз могут быть нацелены для воздействия на источник, предлагающий информацию, приложение или канал передачи системы, что-то, чего обычно можно достичь, используя уязвимости или перегрузив мощность серверов. Последний случай — самый распространенный из них, поскольку он простой, быстрый и очень эффективный.
- Типы DoS-атак
Существует два вида DoS-атак: отказ в обслуживании или DoS (Denial of Service), и la — распределенный отказ в обслуживании или DDoS (Distributed Denial of Service). Разница между ними заключается в количестве компьютеров или IP-адресов, которые проводят атаку.
При DoS-атаках огромное количество запросов к службе генерируется с одного и того же компьютера или IP-адреса. Это приводит к потреблению ресурсов, предлагаемых службой, до тех пор, пока она не превысит свою способность ответа и не начнет отклонять запросы. Как следствие, услуга становится бесполезной, пока не будут предприняты шаги по устранению проблемы.
В случае DDoS-атак запросы или подключения выполняются с использованием большого количества компьютеров или IP-адресов. Все эти запросы выполняются одновременно и к одной и той же атакуемой службе. С DDoS-атакой справиться сложнее. Это связано с тем, что запросы поступают с разных IP-адресов, и администратор не может заблокировать их все. Эта схема очень эффективна против устойчивых систем DoS-атак.
Компьютеры или устройства, которые проводят DDoS-атаку, рекрутируются посредством заражения вредоносным ПО. Благодаря этому вредоносному ПО зараженные компьютеры функционируют как сеть ботов или зомби, которой киберпреступник может удаленно управлять. Из-за размера и работы этой сети у нее больше возможностей по остановке серверов, чем при атаке, проводимой только одной машиной. Следовательно, сегодня они широко используются для атак на очень большие системы.
- DoS и блокчейн-атаки. Мы защищены?
Одна из главных сильных сторон технологии блокчейн — это именно ее устойчивость к DoS- и DDoS-атакам. И именно децентрализованный характер блокчейна повышает его устойчивость к этим угрозам.
Это связано с тем, что децентрализованная платформа позволяет пользователям сети обрабатывать значительно больший объем данных. Ситуация, которая значительно снижает риск успеха DoS и DDoS. Именно благодаря такой конструкции и неотъемлемой стоимости отправки транзакций в сеть различных блокчейнов эти атаки являются неэффективными и дорогостоящими.
Другой способ проведения DoS-атак — использование атак Sybil, Eclipse Attack или атаки Erebus. Последнее является наиболее опасным из всех, поскольку его область действия глобальна, требует мало ресурсов и не обнаруживается, пока не выйдет из строя вся сеть.
Однако, несмотря на эту особенность, всегда есть случаи, когда сети блокчейнов могут стать жертвами DoS- или DDoS-атак. В Биткойне, например, версия 0.14 Bitcoin Core имела уязвимость программного обеспечения, которая позволяла проводить атаки этого типа. Это было обнаружено в 2017 году, и Андреас Антонопулос объяснил это в твите в своем официальном аккаунте. Благодаря природе открытого исходного кода и работе сотен разработчиков и сотрудников, ошибка была быстро исправлена.
Эта последняя ситуация объясняет, насколько важна разработка открытого и проверяемого программного обеспечения. Кроме того, это четкое указание на то, насколько важны обновления компьютерной безопасности и систем. Все это для того, чтобы избежать ситуаций, которые могут оказаться катастрофическими для тех, кто пользуется компьютерными сервисами.
- Является ли децентрализация одним из лучших способов защиты блокчейна от атак типа DoS?
Тот факт, что сети блокчейнов децентрализованы, предотвращает успешную DoS- или DDoS-атаку по отключению службы для пользователей. Это связано с тем, что отсутствует центральное операционное ядро, и падение одного или даже нескольких узлов не влияет на всю сеть.
Хотя сети блокчейнов устойчивы к этим киберугрозам из-за их децентрализованной формы, мы должны знать, что произойдет, если атака этого типа будет проведена эффективно. В качестве примера возьмем сеть Ethereum:
Предположение об эффективной атаке типа «отказ в обслуживании» на Ethereum затронет миллионы пользователей сети. Пользователи не только основной сети, но и остальных токенов, которые работают «на ней». DApps, децентрализованные биржи, распределенная вычислительная инфраструктура — все, что зависит от Ethereum, будет отключено.
Это окажет прямое негативное влияние на пропускную способность Ethereum, и многие пользователи будут сомневаться в идеальности сети для своих проектов. В худшем случае такая ситуация отразится на цене ETH и приведет к резкому падению его капитализации. Экономически негативная ситуация для сети. Это также может оказать сильное влияние на развитие программного обеспечения Ethereum. Ожидается появление новых хард-форков и производных разработок для «улучшения» Ethereum.
Конечно, описанный выше сценарий весьма обескураживает и, хотя и труден, он правдоподобен с учетом последствий, которых можно было бы ожидать от такой атаки. Этот пример помогает нам понять важность безопасности.
Несмотря на то, что блокчейн является очень безопасной технологией, существует множество факторов, которыми можно воспользоваться. Сведение их к минимуму — первоочередная задача не только для предоставляемых услуг, но также для безопасности и непрерывности предоставления услуг пользователям.
Однако также важно подчеркнуть, что Биткойн является бесплатным программным обеспечением, и имеет очень высокую прозрачность.