paint-brush
Web3, boa higiene e a necessidade de segurança de ponta a pontapor@ronghuigu
1,371 leituras
1,371 leituras

Web3, boa higiene e a necessidade de segurança de ponta a ponta

por Ronghui Gu2022/06/13
Read on Terminal Reader
Read this story w/o Javascript

Muito longo; Para ler

Novos projetos de blockchain tratam suas verificações de segurança como algo para sair do caminho antes de seu lançamento, para nunca mais ser pensado. Os projetos que fazem isso parecem pensar que as auditorias são mais para fins de marketing do que de segurança real. O token de meme FEG (Feed Every Gorilla) foi recentemente atingido por dois ataques de empréstimos instantâneos que drenaram coletivamente US$ 3,2 milhões em fundos do protocolo ao longo de dois dias. Uma boa auditoria de contrato inteligente deve fornecer uma avaliação abrangente do código subjacente de um projeto, mas não pode avaliar nenhuma alteração ou atualização que ocorra após a ocorrência da auditoria.

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Web3, boa higiene e a necessidade de segurança de ponta a ponta
Ronghui Gu HackerNoon profile picture


Ter uma auditoria de contrato inteligente é muito parecido com lavar as mãos - faça apenas uma vez e esteja preparado para as consequências.


À medida que a conversa sobre segurança criptográfica esquenta em resposta a um ano devastador de perdas para o cibercrime – Relatório recente da CertiK observa que “2022 está definido para ser o ano mais caro para web3 já registrado” – é vital revisar algumas práticas recomendadas de segurança. O principal deles é a importância de auditorias completas e regulares de contratos inteligentes.


Com muita frequência, novos projetos de blockchain tratam suas verificações de segurança como algo para sair do caminho antes de seu lançamento, para nunca mais ser pensado. Essa atitude aleatória é vista mais claramente em projetos que tiveram apenas uma única auditoria de contrato inteligente. Os projetos que fazem isso parecem pensar que as auditorias são mais para fins de marketing do que de segurança real. Embora seja verdade que investidores e usuários devam evitar projetos que não tenham nenhum tipo de auditoria de contrato inteligente, eles também devem se certificar de que os projetos em que investem estão adotando uma abordagem ativa de ponta a ponta para seus segurança.


Você pode estar se perguntando 'por que um projeto precisa de auditorias regulares? Não se deveria cobrir o projeto em sua totalidade?'. Este é um equívoco comum (e caro). Embora qualquer boa auditoria de contrato inteligente deva fornecer uma avaliação abrangente do código subjacente de um projeto, ela não pode avaliar nenhuma alteração ou atualização que ocorra após a ocorrência da auditoria, especialmente sempre que uma alteração é feita no código subjacente.


Obviamente, qualquer projeto de tecnologia que nunca seja atualizado logo se tornará redundante, e isso é especialmente verdadeiro no mundo dinâmico da web3. Qualquer bom investidor ou usuário de tecnologia sabe que deve evitar um projeto que se recuse a atualizar e desenvolver, mas investe regularmente seu dinheiro em projetos que nunca (ou raramente) atualizam sua segurança. Voltando à metáfora da limpeza, é como apertar a mão de alguém depois de dizer que não lava as mãos há um ano.


Levar a Exploração de finanças de Deus como exemplo, que viu um invasor drenar quase US$ 16 milhões em fundos. Embora Deus tivesse seus contratos inteligentes auditados, um invasor conseguiu atingir um novo contrato inteligente não auditado com um sofisticado ataque de empréstimo instantâneo. Durante o ataque, o hacker conseguiu alterar o preço dos tokens DEI de Deus e colher os benefícios dessa ação de preço previsível. Eles fizeram isso manipulando um pool de empréstimos usado pelo oráculo - um nó de código que interpreta dados - que ditava o preço do token.


Agora, qualquer contrato inteligente que valha sua moeda o alertaria sobre os perigos de usar um oráculo que determina um preço usando um par de negociação, pois eles podem ser facilmente manipulados. No entanto, como o contrato inteligente vulnerável estava fora do escopo da auditoria inicial, os auditores não tiveram a chance de destacar o problema.


Deus deve servir como um aviso claro para os projetos de que eles devem tratar as auditorias de contratos inteligentes como um recurso contínuo em sua estrutura de segurança e auditá-los sempre que uma mudança significativa for feita no projeto. No entanto, nem todas as auditorias são iguais. Vez após vez, vemos projetos bem planejados sofrerem com as falhas de uma auditoria ruim.


Pegue o recente explorações de FEG como um exemplo. O token de meme de governança hiperdeflacionário FEG (Feed Every Gorilla) foi recentemente atingido por dois ataques de empréstimos instantâneos que drenaram coletivamente US$ 3,2 milhões em fundos do protocolo ao longo de dois dias.


Em cada ataque, o hacker (ou hackers) visava a mesma vulnerabilidade no contrato inteligente da FEG. A análise da exploração da CertiK descobriu que isso se devia a uma falha no token [[Função Swap-To-Swap](https://docs.fegtoken.com/fegex/smartswap#:~:text=Swap%2DTo%2DSwap%20(S2S,found%20in%20the%20next%20section) , que leva diretamente o “caminho” de entrada do usuário como uma parte confiável sem qualquer saneamento. Em termos simples, essa falha permitiu que o hacker chamasse repetidamente funções que permitissem obter permissões ilimitadas e drenar o contrato de seus ativos.


Talvez o mais frustrante para a FEG seja o fato de que essa falha deveria ter sido detectada por uma auditoria de contrato inteligente. Mesmo que a FEG tenha seus contratos inteligentes auditados, os auditores devem ter notado que o parâmetro “caminho” não confiável da FEG passou para o protocolo e foi aprovado para gastar ativos do contrato. Qualquer boa auditoria sinalizaria isso como uma gravidade importante e aconselharia o projeto a agir e editar de acordo.


Há uma lição a ser aprendida aqui para a indústria de segurança criptográfica – que, como os hackers continuam a encontrar novas e engenhosas maneiras de explorar projetos, não é mais suficiente para os auditores apenas atualizar suas verificações em resposta a novos ataques. Em vez disso, eles devem estar constantemente atualizando sua tecnologia para que, quando um novo ataque acontecer, eles estejam preparados para isso.


Ambas as explorações destacam não apenas a necessidade de auditorias rigorosas e regulares de contratos inteligentes, mas também a necessidade de uma abordagem proativa, consistente e de ponta a ponta para a segurança web3. Isso equivale a uma mudança no sentido de ver a segurança como algo a ser construído e mantido, em vez de apenas um rótulo a ser comprado e vendido. Isso se aplica às equipes que precisam atualizar a segurança de seus projetos em conjunto com sua tecnologia e também às empresas de auditoria que precisam se antecipar a ataques, em vez de apenas responder a eles.