Back to Blog

Panorama de Segurança DeFi: 50 Players Essenciais que Você Precisa Conhecer

August 30, 2024
13 min read
Key Insights

TL;DR

  • A segurança continua sendo um desafio crítico e contínuo no DeFi, com bilhões de dólares perdidos anualmente.
  • As medidas de segurança para um protocolo DeFi devem abranger todo o seu ciclo de vida, garantindo tanto os aspectos inerentes quanto os operacionais, desde o pré-lançamento até o pós-lançamento. É fundamental implementar estratégias preventivas e planos de contingência para mitigar possíveis ataques.
  • A segurança pré-lançamento centrada na auditoria de código tornou-se um consenso na comunidade. No entanto, apesar do surgimento de soluções de segurança pós-lançamento (por exemplo, monitoramento e bloqueio de ataques), sua importância ainda não foi totalmente reconhecida pela comunidade.
  • A melhoria contínua das práticas de segurança e uma mudança em direção a uma cultura que prioriza a segurança são essenciais para proteger os ativos dos usuários e aumentar a confiança no ecossistema.
DeFi Security Landscape
DeFi Security Landscape

Introdução

À medida que o DeFi continua a revolucionar o cenário financeiro, a segurança permanece uma preocupação significativa dentro do ecossistema, com bilhões de dólares em perdas todos os anos.

De acordo com os dados da Chainalysis, os ataques a protocolos DeFi em 2023 causaram mais de US$ 1,1 bilhão em perdas. Embora esse número tenha diminuído em comparação com 2022, há múltiplas novas tendências nos ataques DeFi em 2023. Por exemplo, protocolos de renome como Curve e KyberSwap, que operavam com segurança há anos, foram hackeados. Além disso, ataques sofisticados voltados a vulnerabilidades de infraestrutura, como o Flashbots relay, foram expostos.

No primeiro semestre de 2024, mais de cinquenta ataques causando perdas superiores a US$ 100 mil ocorreram, de acordo com o Security Incident Dashboard.

Alguns ataques recentes no Security Incident Dashboard
Alguns ataques recentes no Security Incident Dashboard

A segurança é um fator crucial para a prosperidade e a adoção massiva de aplicações DeFi. Isso ocorre porque os protocolos DeFi gerenciam bilhões de dólares em ativos de usuários, e qualquer ataque direcionado a esses protocolos pode resultar em perdas significativas para os usuários afetados. Embora em alguns casos os fundos roubados possam ser (parcialmente) recuperados (como no incidente de segurança da Euler), não podemos contar com isso sempre. Cada ataque corrói a confiança das pessoas no DeFi.

Embora múltiplos métodos tenham sido propostos para melhorar a segurança do DeFi, ainda há muito espaço para melhoria.

  • No lado positivo, a auditoria de código tornou-se um consenso na comunidade para garantir a segurança. A maioria dos protocolos passa por auditorias de código antes do lançamento, o que ajuda a reduzir as superfícies de ataque causadas por vulnerabilidades nos contratos inteligentes.
  • No entanto, a auditoria de código por si só está longe de ser suficiente para resolver todos os problemas de segurança. Ela não consegue prevenir ataques resultantes de vulnerabilidades introduzidas durante atualizações de contratos inteligentes, mudanças de configuração e dependências em tempo de execução entre diferentes protocolos.

Devido a essas limitações, soluções mais proativas, como monitoramento operacional ou sistemas de detecção de ataques, surgiram e foram adotadas por alguns protocolos.

Neste blog, exploraremos o Panorama de Segurança do DeFi traçando a jornada de segurança de um protocolo em diferentes estágios, desde sua fase de pré-lançamento, passando pelo estágio operacional, até a resposta a ataques. Detalharemos os diversos tipos de medidas de segurança e destacaremos os principais fornecedores (produtos) em cada estágio, discutindo seus prós e contras. Esperamos que nossas percepções possam ajudar a comunidade a compreender melhor o estado da arte e, mais importante, inspirar soluções inovadoras no futuro.

Panorama de Segurança do DeFi

As medidas de segurança para um protocolo DeFi devem abranger todo o seu ciclo de vida, desde o estágio de pré-lançamento até o estágio pós-lançamento, garantindo tanto a segurança inerente quanto a operacional do protocolo. Além disso, é essencial ter medidas preventivas e planos de contingência para lidar com possíveis ataques. Para ajudar os leitores a entender as soluções disponíveis, classificamos os fornecedores (produtos) de segurança DeFi nas seguintes categorias.

Segurança Pré-Lançamento

Esta categoria consiste nas medidas de segurança realizadas antes do lançamento de um protocolo, incluindo auditoria de código, verificação formal e testes de segurança.

Segurança pré-lançamento: serviço e concurso de auditoria de código, verificação formal e testes de segurança
Segurança pré-lançamento: serviço e concurso de auditoria de código, verificação formal e testes de segurança

Serviço e Concurso de Auditoria de Código

A auditoria de código é uma prática de segurança bem aceita na comunidade para proteger um protocolo. Durante esse processo, o código é revisado por empresas de segurança de forma semiautomática, ou seja, por meio de varredura automática do código em busca de vulnerabilidades comuns e revisão manual para as mais complexas. Empresas representativas incluem OpenZeppelin, ChainSecurity, BlockSec, entre outras.

Além disso, existem plataformas de concurso de auditoria, que diferem das empresas de auditoria de segurança na forma como a auditoria é realizada. Essas plataformas iniciam o concurso de auditoria, envolvem pesquisadores de segurança da comunidade para conduzir o concurso e distribuem as recompensas para quem encontrar problemas no protocolo. É claro que as plataformas podem ter algumas diferenças sutis na forma de avaliar a gravidade, no algoritmo de distribuição de recompensas e nos critérios para envolver os pesquisadores de segurança. Tais plataformas incluem Code4rena, SHERLOCK, Cantina e Secure3.

A auditoria de código (e concursos) é a principal linha de defesa para a segurança dos protocolos. No entanto, ela tem limitações práticas, o que explica por que muitos protocolos auditados por empresas renomadas ainda são hackeados.

  • Primeiro, a auditoria estática de código não consegue avaliar completamente os problemas de segurança causados pelas dependências do protocolo, especialmente devido à composabilidade dos protocolos DeFi.
  • Segundo, o impacto de segurança de alguns problemas foi subestimado durante a auditoria de código. Por exemplo, a perda de precisão é um problema comum e pode ser negligenciada tanto por auditores quanto por protocolos. Seu impacto de segurança não foi totalmente reconhecido pela comunidade até os incidentes do Hundred Finance e do Channels Finance.
  • Por último, mas não menos importante, a auditoria de código de alta qualidade continua sendo um recurso valioso e escasso, que exige talentos multidisciplinares proficientes em segurança, finanças e ciência da computação. Poucas universidades conseguem fornecer esses talentos de forma consistente e em larga escala atualmente. Assim, os protocolos podem ser auditados por empresas que não estão qualificadas para o trabalho.

Verificação Formal

"A verificação formal é o ato de provar ou refutar a correção de um sistema em relação a uma determinada especificação formal ou propriedade, utilizando métodos formais da matemática". Por ser capaz de provar a correção dos sistemas, a verificação formal tem sido aplicada a protocolos DeFi. Especificamente, ela pode garantir que o comportamento de um protocolo DeFi satisfaça a especificação formal. O representante dos produtos de verificação formal para protocolos DeFi é o Prover desenvolvido pela Certora. Os desenvolvedores fornecem as regras (especificação) e o Prover compara os resultados com as regras para identificar bugs explorando todos os estados possíveis do programa.

O aspecto mais promissor da verificação formal é que ela prova matematicamente a correção do protocolo DeFi. No entanto, na prática, ainda apresenta algumas limitações que dificultam sua ampla adoção.

  • Primeiro, a especificação deve ser fornecida pelos desenvolvedores, o que exige que eles tenham uma especificação bem documentada do comportamento esperado do protocolo. Isso não é fácil, considerando que a maioria dos desenvolvedores não é especialista nessa área.
  • Segundo, as atualizações frequentes de um protocolo podem exigir especificações atualizadas e reavaliação do protocolo. Alguns protocolos podem não dispor de tempo e esforço para isso.

Ainda assim, a verificação formal deve ser conduzida pelos protocolos, particularmente os novos que ainda não foram testados em batalha e que gerenciam ativos substanciais de usuários. No entanto, melhorar a usabilidade e aumentar a taxa de adoção da verificação formal continua sendo um desafio contínuo.

Testes de Segurança

Os testes de segurança referem-se ao processo de uso de casos de teste para encontrar bugs em um protocolo. Em comparação com a verificação formal, que prova matematicamente a correção do protocolo, os testes de segurança geralmente utilizam entradas concretas em vez das simbólicas da verificação formal, sendo muito mais eficientes, porém menos rigorosos.

  • Foundry é um dos frameworks populares de desenvolvimento e teste para contratos inteligentes. Os desenvolvedores podem executar testes no Foundry. Ele também oferece recursos para realizar testes de fuzz, testes de invariantes e testes diferenciais em protocolos DeFi.
  • Outras ferramentas de teste de segurança incluem Tenderly e Hardhat.

Segurança Pós-Lançamento

Esta categoria consiste nas medidas de segurança realizadas após o lançamento de um protocolo (ou quando ele está ativo na mainnet), incluindo programas de recompensa por bugs, detecção de ataques e monitoramento operacional.

Segurança pós-lançamento: programa de recompensa por bugs, detecção de ataques e monitoramento operacional
Segurança pós-lançamento: programa de recompensa por bugs, detecção de ataques e monitoramento operacional

Programa de Recompensa por Bugs

Os programas de recompensa por bugs criam uma ponte entre os protocolos e os pesquisadores de segurança. O conceito fundamental é incentivar os pesquisadores a reportar vulnerabilidades zero-day em troca de recompensas. Especificamente, os protocolos podem listar suas recompensas em plataformas de bug bounty, detalhando o escopo e o valor da recompensa pelos bugs reportados. Immunefi é uma plataforma representativa de bug bounty para Web3.

Detecção de Ataques

As plataformas de detecção de ataques varrem transações para localizar as maliciosas. Especificamente, essas plataformas verificam as transações que interagem com um protocolo em busca de comportamentos maliciosos. Se tal transação ocorrer, um alerta será acionado.

  • Por exemplo, o BlockSec Phalcon varre as transações e utiliza um mecanismo de detecção baseado em comportamento para identificar atividades maliciosas (como contratos ou propostas maliciosas). Pense nele como um guarda de segurança virtual que observa cada etapa de uma transação financeira, procurando qualquer comportamento suspeito. Ele extrai os padrões de comportamento dessas transações, como um detetive analisando pistas, e então utiliza modelos financeiros — semelhantes aos usados por bancos para detectar fraudes — para identificar potenciais ataques.
  • Sistemas similares incluem os produtos fornecidos pela Hypernative e pela Hexagate.
  • Além disso, a Venn Security network da Ironblocks fornece uma infraestrutura descentralizada para combinar os resultados de detecção de múltiplas fontes.

Monitoramento Operacional

Os frameworks de monitoramento operacional fornecem uma forma de implementar segurança operacional para protocolos DeFi. Por exemplo, o protocolo DeFi precisa saber sobre mudanças na chave de administrador, realizar implantação e atualização de contratos inteligentes, e verificar automaticamente pull requests em busca de vulnerabilidades de segurança.

  • O OpenZeppelin Defender fornece uma plataforma que permite aos desenvolvedores codificar, implantar e operar contratos inteligentes com segurança.
  • O BlockSec Phalcon pode monitorar riscos associados a atualizações de contratos, criação de transações em carteiras Safe, novas assinaturas e execuções, controle de acesso e governança.
  • A Forta Network possui uma infraestrutura que permite aos usuários criar seus próprios bots para monitorar seus protocolos ou assinar bots existentes para alertas de phishing ou ameaças.

Resposta a Ataques

Esta categoria consiste nas medidas de segurança acionadas quando um ataque ocorre, incluindo bloqueio de ataques, ação automática, sala de guerra, análise de causa raiz e rastreamento do fluxo de fundos do atacante.

Resposta a ataques: bloqueio de ataques, ação automática, sala de guerra, análise de causa raiz e rastreamento de fluxo de fundos
Resposta a ataques: bloqueio de ataques, ação automática, sala de guerra, análise de causa raiz e rastreamento de fluxo de fundos

Entre as cinco medidas de Resposta a Ataques, o bloqueio de ataques é particularmente notável porque permite que as equipes de projeto implantem medidas preventivas com antecedência, bloqueando com sucesso os ataques antes da execução e minimizando as perdas a zero. As plataformas de resposta automática também ajudam a reduzir os danos causados pelos ataques.

Estabelecer uma sala de guerra, conduzir análise de causa raiz e rastrear fundos roubados são etapas reativas tomadas após a ocorrência de um ataque. Embora essas estratégias possam mitigar alguns danos e ajudar a prevenir ataques semelhantes no futuro, as perdas podem já ter ocorrido e podem ser difíceis de recuperar. Além disso, o dano à reputação do projeto e a consequente perda de confiança dos usuários podem ser profundos.

Os riscos estão em toda parte e muitas vezes além do controle, mas optar por implantar medidas de defesa preventiva está totalmente ao alcance e é altamente recomendado.

Bloqueio de Ataques

A detecção de ataques não é suficiente quando se combate hacks na prática. Isso ocorre porque, sem a capacidade de bloquear automaticamente os hacks, as respostas manuais não são rápidas o suficiente. Em alguns casos (KyberSwap, Gamma Strategies e Telcoin na tabela a seguir), o protocolo leva alguns minutos e até horas para tomar uma ação manual, o que é tarde demais para salvar os ativos no protocolo. Em ataques recentes à Velocore e à Rho, toda a cadeia Linea e Scroll foi pausada, respectivamente, o que levanta preocupações de centralização para a cadeia L2.

O bloqueio de ataques é a capacidade de prevenir hacks automaticamente, exigindo duas técnicas fundamentais: detecção antecipada e frontrunning automático de hacks.

  • A detecção antecipada significa que o sistema pode identificar transações de ataque antes que sejam finalizadas na blockchain, especificamente enquanto ainda estão pendentes no mempool.
  • O frontrunning do ataque envolve colocar uma transação na cadeia antes da transação de ataque para pausar o protocolo, interrompendo efetivamente o ataque antes que ele possa ser executado.

Nesta categoria, o BlockSec Phalcon é o único produto que possui essas técnicas fundamentais. Após um hacker iniciar uma transação de ataque, o mecanismo de monitoramento de ataques do Phalcon pode detectar essa transação imediatamente, enviar alertas de ataque aos usuários e automaticamente fazer frontrunning para pausar o protocolo, reduzindo as perdas a zero. Suas técnicas fundamentais foram testadas em batalha com mais de vinte resgates de mais de 20 milhões de dólares.

Ação Automática

Plataformas como Phalcon, Hexagate e Hypernative também podem responder automaticamente quando um ataque ocorre.

Após assinar essas plataformas, os usuários podem configurar medidas de monitoramento e resposta para vários riscos do protocolo. Se uma transação atender às regras de monitoramento, o sistema iniciará automaticamente as ações de resposta pré-configuradas pelo usuário (como pausar o protocolo), reduzindo assim as perdas.

No entanto, algumas plataformas não possuem um mecanismo de detecção de ataques, e o sistema não consegue reconhecer diretamente as transações de ataque e notificar o usuário. Em vez disso, exige que os usuários personalizem sob quais condições uma transação pode ser considerada um ataque. Como as características das transações de ataque são muito complexas e os usuários (geralmente desenvolvedores de contratos) podem não ter conhecimento suficiente em segurança, isso pode ser bastante desafiador para eles.

Sala de Guerra

Estabelecer uma sala de guerra é necessário quando um protocolo está sob ataque. Isso pode ajudar o protocolo a entender o que está acontecendo, compartilhar inteligência na comunidade e aproveitar os recursos para ações adicionais. Isso geralmente envolve especialistas de diferentes perspectivas.

O SEAL 911 é um projeto para "dar a usuários, desenvolvedores e pesquisadores de segurança uma forma acessível de se conectar com um pequeno grupo de profissionais de segurança altamente confiáveis em caso de emergência." Pode ser acessado pelo SEAL 911 Telegram Bot. Em caso de um projeto sob ataque, uma sala de guerra pode ser estabelecida para auxiliar o protocolo.

Análise de Causa Raiz

Quando um ataque ocorre, o protocolo precisa entender a causa raiz, como a vulnerabilidade dentro dos contratos inteligentes e como ela foi explorada. Para isso, são necessárias ferramentas úteis para analisar as transações de ataque. O Phalcon Explorer, o OpenChain e o Tenderly podem ser usados para esse fim.

Rastreamento de Fluxo de Fundos

O rastreamento de fluxo de fundos consiste em rastrear os fundos iniciais do atacante e os lucros do ataque na blockchain para localizar os endereços e entidades relacionados. Se os ativos estiverem fluindo para entidades centralizadas (por exemplo, exchanges centralizadas e outras entidades de nível institucional), as autoridades policiais podem ser contatadas para ajudar a congelar os fundos.

Algumas empresas e ferramentas estão nesta categoria, incluindo Chainalysis, TRM Labs, ARKHAM, ELLIPTIC, MetaSleuth e outros.

  • Por exemplo, o MetaSleuth desenvolvido pela BlockSec pode rastrear automaticamente os fundos em diferentes cadeias com rótulos ricos de endereços de carteira.
  • O ARKHAM possui uma comunidade onde o protocolo pode oferecer uma recompensa pela investigação, o que incentiva a comunidade a ajudar a rastrear os fundos do atacante.

Recursos Educacionais de Segurança

Mentes bem informadas constroem defesas mais sólidas. Além dos fornecedores e produtos de segurança mencionados acima, há outro componente crucial da segurança DeFi: as plataformas educacionais.

Plataformas educacionais para segurança DeFi
Plataformas educacionais para segurança DeFi

Essas plataformas fornecem recursos essenciais para profissionais e usuários DeFi compreenderem insights de segurança, aumentarem a conscientização e desenvolverem habilidades de segurança. Elas desempenham um papel vital no avanço da segurança DeFi. Expressamos nossa gratidão a essas plataformas educacionais e listamos alguns exemplos notáveis.

  • SΞCURΞUM: Uma comunidade no Discord focada em segurança Ethereum. Também hospeda um quiz mensal de segurança de contratos inteligentes, o "Secureum RACE."
  • Security Incidents Dashboard: Esta plataforma coleta todos os incidentes de ataque causando perdas superiores a US$ 100 mil, detalhando perdas, cadeias afetadas, vulnerabilidades, causas raiz e PoCs.
  • Rekt: Conhecido como a dark web do jornalismo DeFi, o Rekt fornece análises aprofundadas de exploits, hacks e golpes dentro do ecossistema.
  • RugDoc: Uma comunidade de segurança e educação DeFi que avalia riscos de projetos. Também possui uma plataforma chamada RugDocWiKi, que apresenta o ecossistema e a tecnologia DeFi.
  • DeFiHackLabs: Uma comunidade de segurança Web3 com mais de 2.600 membros e quase 200 hackers de chapéu branco, com o objetivo de unir a expertise em segurança Web2 e Web3.
  • Solodit: Uma plataforma que compila relatórios históricos de várias empresas de auditoria Web3, servindo como um recurso valioso para auditores de contratos inteligentes.
  • Ethernaut: Um jogo baseado em Web3/Solidity onde os jogadores identificam vulnerabilidades em contratos Ethereum, semelhante a desafios CTF.

Conclusão

A segurança ainda é uma ameaça contínua e séria ao ecossistema DeFi, causando bilhões em perdas a cada ano. Atualmente, a maioria das medidas de segurança é realizada na fase de pré-lançamento. No entanto, não existe uma solução milagrosa em segurança, e diferentes métodos devem ser aplicados ao longo de toda a vida útil de um protocolo DeFi. Esperamos que o setor adote soluções de segurança pós-lançamento para monitorar e, mais importante, bloquear automaticamente os ataques. Antecipamos que a cultura de segurança em primeiro lugar será estabelecida no ecossistema para proteger plenamente os ativos dos usuários.

Leituras Relacionadas