O Eclipse Attack ou Eclipse Attack é outro dos ataques conhecidos no mundo das criptomoedas. Isso consiste em isolar e eclipsar a conexão de rede das vítimas, inundando-as com dados falsos sobre a rede blockchain da qual eles fazem parte.
Unúmero de ataques que podem ser realizados contra redes blockchain é o Eclipse Attack ou Eclipse Attack. Este é um tipo de ataque que busca isolar e atacar um usuário específico que faz parte da rede. Tudo com o objetivo de poder manipular os dados que o destino recebe da rede. Dessa forma, qualquer tipo de atividade maliciosa contra a vítima pode ser realizada.
Certamente o redes ponto a ponto (P2P) e a tecnologia blockchain são muito seguras, mas não existe segurança absoluta. É por isso que neste novo capítulo da Academia Bit2Me vamos explicar tudo sobre este tipo de ataque, conhecendo também os meios que existem para o evitar e se proteger dele.
Anatomia de um ataque do Eclipse
Como mencionamos no início, um Eclipse Attack, ou Eclipse Attack, visa desconectar a vítima do fluxo de dados válido da rede. Isso para que a vítima receba dados manipulados do atacante. Parece muito assustador do ponto de vista da segurança, e certamente é. Mas você pode se perguntar por que é possível realizar um ataque desse tipo? Eles podem ser evitados de alguma forma?
Pois bem, Primeiramente, esses tipos de ataques são possíveis devido à estrutura e às limitações do protocolo de comunicação ponto a ponto que uma blockchain usa.. Mais especificamente, isso se deve à limitação no número de conexões e à seleção segura de nós. Por exemplo, na rede Bitcoin o limite de conexões de saída (aquelas que você pode estabelecer com outros nós remotos) é de 8 conexões. Isso significa que cada nó Bitcoin é capaz de manter conexões bidirecionais com 8 nós por vez. O ciclo se repete em cada nó, pois esse comportamento faz parte do protocolo descrito em Bitcoin Core.
Agora, isso representa uma vantagem e uma desvantagem. Por um lado, a vantagem que apresenta é que, como existem poucas conexões, são necessários pouco poder de computação e largura de banda. Isso abre as portas para qualquer pessoa de qualquer lugar do mundo ter um nó Bitcoin. Com isso descentralizar a rede e segurança adicional.
Mas a limitação de conexões também tem uma desvantagem e é relativamente fácil seqüestrar essas conexões. O esforço necessário para realizar isso varia de acordo com as proteções, o processo de seleção de nó seguro e o tamanho da rede. Mas basicamente tudo o que você precisa é de uma botnet sob seu controle e detectar o Endereços IP do restante dos nós da rede. Portanto, quando esses nós reiniciam sua conexão à rede, os nós maliciosos podem intervir na conexão e assumir o controle da vítima.
Consequências deste tipo de ataque
As consequências do Eclipse Attack ou Eclipse Attack são variadas e dentre elas podemos mencionar:
Explorar conexões para controlar a rede
Depois que um ator mal-intencionado assume algum controle da rede, nada o impede de aumentar ainda mais esse controle. De fato, com cada novo nó sob seu controle, aumentar sua presença na rede se torna cada vez mais fácil. Depois de ter o gerenciamento de nós, você pode manipular confirmações de bloco como quiser e até sabotar e rastrear conexões de rede.
No final, o invasor pode até ganhar o poder de manipular o crescimento da rede, alterando as versões do livro-razão da blockchain como bem entender.
Realizar engenharia de corrida em bloco
Esse é um tipo de ataque altamente especializado que pode ser executado em redes usando o Protocolo de Prova de Trabalho (PoW). Esse tipo de ataque foi apontado em 2015 pelos pesquisadores Ethan Heilman, Alison Kendler, Aviv Zohar e Sharon Goldberg, em seu trabalho "Ataque do Eclipse na rede ponto a ponto do Bitcoin".
A explicação para o ataque é que, se dois mineradores eles descobrem um bloco simultaneamente; um invasor pode usar um ataque de eclipse para mineradores eclipsados para desperdiçar esforços de mineração em blocos órfãos. Isso daria ao atacante a capacidade de minar seus próprios bloqueios. No final, o atacante garante que seu bloqueio seja processado pela rede sob seu controle e receba a recompensa.
Outra possibilidade é dividir o poder de mineração da rede. Dessa maneira, o invasor pode facilitar o lançamento de um Ataque de 51% para ajudá-lo a reescrever o blockchain ou razão.
Por fim, também abre a possibilidade de ataques de gasto duplo confirmação N. Isso significa que um invasor pode controlar um certo grupo de mineiros e, a partir daí, informar que o transação recebeu várias confirmações. Esse ataque permitiria, por exemplo, que um comerciante fosse enganado e pensasse que a transação de um serviço foi confirmada pela rede. Mas, na realidade, foi vítima de um elaborado ataque de eclipse.
Ataques aos protocolos da segunda camada
Outra conseqüência desse tipo de ataque é a realização de ataques a protocolos de segunda camada. Ou seja, torne vulnerável a protocolos como Lightning Network, Camada Omni o RSK em Bitcoin. Ou mesmo criações derivadas de contratos inteligentes, como todos aqueles executados em Ethereum, EOS o TRON.
Isso seria possível porque um Eclipse Attack enganaria sua vítima para que visse um estado irreal da rede. Por exemplo, um canal de pagamento Lightning seria mostrado como aberto para a vítima, enquanto o invasor fechou o canal, levando os fundos com ele. No caso de smart contracts, os usuários veriam estados inconsistentes da blockchain.
Dê origem a novos e mais perigosos vetores de ataque
O Eclipse Attack também é a fonte de um tipo de ataque mais perigoso e de longo alcance, o Erebus Attack. Este ataque é capaz de executar um Eclipse Attack em grande escala na rede, resultando em sua partição. Com isso, quem realiza um Ataque Erebus é capaz de dividir a rede e gerenciá-la à vontade, podendo até fazer uma Negação de Serviços (DoS), realizar um Ataque de 51% ou criar um hard fork do blockchain.
O Ataque Erebus é um ataque descrever em 2019 por Muoi Tran, Inho Choi, Gi Jun Moon, Anh V.Vu e Min Suk Kang da Universidade Nacional de Cingapura.
Como os Eclipse Attacks ou Eclipse Attacks podem ser evitados nas redes blockchain?
Esse ataque é conhecido há muito tempo; na verdade, eles são conhecidos desde a criação das primeiras redes ponto a ponto. Por exemplo, o Protocolo Kademlia ele era suscetível a tais ataques. No entanto, este protocolo implementou uma série de medidas para evitá-los. Algumas dessas medidas ainda estão sendo implementadas hoje com algumas melhorias. Dentre essas medidas podemos citar:
Sistema de identificação por pares
Este sistema procura que os pares na rede tenham um ID único e irrepetível. Essa é uma maneira de criar uma árvore de IDs que permite saber quem é quem na rede. No blockchain isso é possível graças ao uso de criptografia assimétrica. No entanto, essa medida é insuficiente, pois é possível executar vários nós que usam o mesmo IP. Por exemplo, um invasor pode criar vários nós para controlá-los e continuar aplicando seu ataque à rede.
Portanto, essa medida é complementada por uma limitação de identidades por IP, impedindo que esse vetor seja explorado.
Processo de seleção por pares
Outro ponto importante para evitar ataques de eclipse é ter um processo confiável de seleção de pares para a rede. Por exemplo, no Ethereum, esse processo usa um protocolo baseado no Kademlia. Isso permite que cada item do Ethereum seja associado a uma chave e armazenado apenas naqueles pares cujo ID do nó está "próximo" de sua chave associada. Essa "proximidade" é definida como a distância binária de Hamming entre a chave e o ID do nó.
Dessa maneira, a rede garante que tenha uma série de nós bem identificados e relacionados.
Controlar conexões de entrada e saída
Outra medida de controle aplicada em blockchain para controlar ataques Eclipse é controlar as conexões de entrada e saída. Para isso, são estabelecidos limites de comunicação com os nós da rede para que em caso de ataque a um nó não possa afetar grande parte da rede. Isso evita que a área de ação de um nó seja muito grande e o invasor tenha que controlar vários nós para realizar um ataque com sucesso. Além disso, a medida se fortalece com a descentralização e ampliação da rede.
Essas três proteções no total são as mais básicas que toda rede blockchain aplica a seus protocolos. Seu propósito é claro: tornar um Eclipse Attack muito caro. Aplicar todas essas atenuações significa que o invasor deve fazer um grande esforço para controlar a rede e realizar seu ataque. Na verdade, quanto maior for a rede a ser atacada, mais difícil será realizar esse ataque. Assim, os promotores de uma blockchain sempre pedem que nós completos sejam instalados para fortalecer a rede.
Quanto você sabe, cryptonuta?
Os ataques do Eclipse são fáceis de executar?FALSO!
O Bitcoin e o resto das redes de blockchain são muito claros sobre os riscos dos Ataques Eclipse em suas redes. Por esse motivo, eles sempre procuram mecanismos que ajudem a neutralizar essas falhas, mantendo o mais alto nível de segurança possível.
Eclipse Attack vs Sybil Attack, diferenças entre esses ataques
Agora, há uma certa relação entre o que é um Ataque Sybil e um ataque do Eclipse, que explicaremos abaixo.
Um Eclipse Attack ou Eclipse Attack ocorre quando a maioria (se não todos) de seus pares são maliciosos e basicamente evitam que você esteja bem conectado à rede para obter informações sobre as transações que ocorrem nela. Isso é útil quando um invasor deseja manipular uma transação para fazer você acreditar que ela foi executada com sucesso, quando na verdade foi manipulada.
Dessa forma, o invasor dobrará os gastos e sua vítima pensará que a transação foi confirmada. No final, quando o ataque termina e a vítima entra em contato com nós confiáveis, ela fica sabendo do ataque e que os fundos nunca foram enviados. Enquanto um Sybil Attack ou Sybil Attack, por outro lado, é quando um agente malicioso tenta enviar spam para a rede com nós que ele controla tentando subverter o sistema de reputação da rede.
Para resumir, um Eclipse Attack visa apenas uma parte; enquanto um Sybil Attack visa toda a rede.
Como evitar ser vítimas do Eclipse Attack ou Eclipse Attack?
A melhor maneira de se proteger desse tipo de ataque é levar em consideração uma série de recomendações. Entre estes podemos destacar:
- Certifique-se de usar um sistema de pagamento e carteiras com boa reputação. Se possível, tente instalar um nó próprio e use-o para verificar suas transações. Desta forma, você não só ajudará a proteger a rede, mas também criará uma medida de segurança para se proteger desse tipo de ataque.
- Evite em qualquer caso aceitar pagamentos 0-conf ou sem confirmação. Lembre-se de que, neste estado, as transações podem ser manipuladas de várias maneiras e o ataque de eclipse é uma delas.
- Se você tem um nó próprio, certifique-se de se proteger. A maneira mais fácil é limitar o número de conexões de entrada, um firewall que impede essas conexões é uma boa maneira de começar.
- Você também pode revisar periodicamente suas conexões de nó ou carteira e criar uma lista de nós confiáveis para uso em todos os momentos. Isso evitará surpresas amargas caso seu nó esteja conectado a um nó malicioso que desencadeie esse tipo de ataque contra você ou qualquer outro usuário da rede.
- Mantenha suas carteiras e nós atualizados. Os desenvolvedores estão cientes dos ataques de eclipse e estão sempre procurando maneiras de fortalecer os protocolos de conexão. Uma atualização a esse respeito pode fornecer uma defesa melhor contra esses tipos de ataques.
Com essas recomendações simples, você pode se proteger melhor contra esses tipos de ataques e, assim, cuidar do seu dinheiro e privacidade.