El desarrollo de la industria blockchain y cómo defenderse de los ataques a DeFi

Hoy en día, el mercado de blockchain en su conjunto está en su infancia, y el finanzas descentralizadas (DeFi) mercado es su parte más prometedora. Según los datos de DefiLlama, en 2021, el mercado DeFi tenía alrededor de $200 mil millones de liquidez bloqueada en contratos inteligentes. Si consideramos este capital como una inversión inicial, este mercado parece una empresa muy prometedora. No muchas empresas globales pueden presumir de tal capitalización. Pero cualquier mercado joven tiene sus problemas iniciales. Con DeFi, el problema principal es la falta de desarrolladores de blockchain calificados.

Esta industria es muy joven y tiene una base de usuarios relativamente pequeña. La mayoría de las personas, en el mejor de los casos, han oído hablar de DeFi sin tener idea de qué es. Pero como sucede con cada nueva empresa prometedora, rápidamente crea mucho interés especulativo. Desafortunadamente, la preparación del personal lleva mucho más tiempo, especialmente cuando se trata de esferas tan intensas en conocimientos como la cadena de bloques y el desarrollo de contratos inteligentes. Esto significa que algunos equipos de proyecto tendrán que comprometerse y contratar personal con menos experiencia.

Este problema inevitablemente crea un riesgo creciente de lagunas de seguridad en el código de estos proyectos. Y luego tenemos que lidiar con sus consecuencias en la pérdida de capital de usuario. Para una breve comprensión de cuán grande es este problema, puedo decir que los piratas informáticos robaron alrededor del 10% de la liquidez total bloqueada de DeFi. No debería sorprender a nadie que el público en general prefiera mantenerse alejado de un sistema financiero que representa tales peligros para sus fondos.

Relacionado: ¿Cómo se piratean los protocolos DeFi?

¿Cómo han cambiado recientemente los exploits de DeFi?

Los ataques a DeFi se han centrado durante mucho tiempo en ataques de reingreso. Podemos recordar el famoso El hackeo de DAO de 2016 que resultó en la pérdida de $150 millones en capital de inversionistas y condujo a la bifurcación dura de Ethereum. Desde entonces, esta vulnerabilidad ha sido explotada muchas veces en diferentes contratos inteligentes.

La función de devolución de llamada se utiliza activamente en los protocolos de préstamos: permite que los contratos inteligentes verifiquen el saldo de la garantía de los usuarios antes de otorgar un préstamo. Todo este proceso ocurre dentro de una transacción, lo que les ha dado a los piratas informáticos una solución para robar dinero de tales contratos inteligentes. Cuando envía una solicitud para pedir fondos prestados, la función de devolución de llamada primero verifica el saldo de la garantía, luego otorga el préstamo si la garantía fue suficiente y luego cambia el saldo de la garantía del usuario dentro del contrato inteligente.

Para engañar al contrato inteligente, los piratas informáticos devuelven la llamada a la función de devolución de llamada para iniciar este proceso desde el principio. Dado que la transacción no se ha finalizado en la cadena de bloques, la función otorga otro préstamo por el mismo saldo de garantía. A pesar de que la solución a este problema ha estado en escena durante suficiente tiempo, muchos proyectos aún son víctimas de ella.

A veces, los equipos de proyectos con poca habilidad para escribir contratos inteligentes deciden tomar prestada la base de código de otro proyecto DeFi de código abierto para implementar su propio contrato inteligente. Normalmente lo hacen con proyectos acreditados que han sido auditados y tienen una gran base de usuarios y han demostrado estar construidos de manera segura. Pero pueden decidir hacer modificaciones menores al código prestado para agregar funcionalidades que desean tener en su contrato inteligente, sin siquiera cambiar el código original. Esto puede dañar la lógica del contrato inteligente, que los desarrolladores a menudo no se dan cuenta.

Esto es lo que permitió a los piratas robar alrededor de $ 19 millones de Cream Finance en agosto de 2021. El equipo de Cream Finance tomó prestado el código de un protocolo DeFi diferente y agregó un token de devolución de llamada en su contrato inteligente. Aunque puede evitar los ataques de reingreso implementando el patrón de "comprobaciones, efectos, interacciones" que prioriza el cambio de saldo sobre la emisión de fondos, algunos equipos aún no protegen sus plataformas de estas vulnerabilidades.

Los ataques de préstamos flash permiten a los piratas informáticos robar fondos de manera diferente y se han vuelto cada vez más populares desde el auge de DeFi de 2020. La idea principal de los ataques de préstamos flash es que no necesita tener una garantía para pedir prestado fondos de un protocolo porque la paridad financiera aún está garantizada. por el hecho de que el préstamo se toma y se devuelve en una sola transacción. Y no tendrá lugar si no devuelve el préstamo con intereses en una sola transacción. Pero los atacantes han podido realizar ataques de préstamos rápidos exitosos en muchos protocolos.

Relacionado: Se necesita: un proyecto educativo masivo para combatir los hackeos y las estafas

Al hacerlo, usan múltiples protocolos para pedir prestado y arrastrar la liquidez hasta el acto final, donde aumentan el precio de un token a través de oráculos o grupos de liquidez y lo usan para estafar un bombeo y descarga y desaparecer con la liquidez en una matriz. de algunas de las principales criptomonedas diferentes, como Ether (ETH), Wrapped Bitcoin (wBTC) y otros. Algunos famosos ataques de préstamos rápidos incluyen el Ataque del conejo panqueque, donde el protocolo perdió $200 millones, y otro ataque de Cream Finance, en el que se robaron más de 100 millones de dólares.

¿Cómo defenderse de los exploits de DeFi?

Para construir un protocolo DeFi seguro, idealmente, solo debe confiar en los desarrolladores de blockchain experimentados. Deben tener un líder de equipo profesional con habilidad en la creación de aplicaciones descentralizadas. También es aconsejable recordar usar bibliotecas de códigos seguros para el desarrollo. A veces, las bibliotecas menos actualizadas pueden ser la opción más segura que las que tienen las bases de código más nuevas.

La prueba es otra cosa crucial todos los proyectos serios de DeFi deben hacer. Como director ejecutivo de una empresa de auditoría de contratos inteligentes, siempre trato de cubrir el 100 % del código de nuestros clientes y enfatizo la importancia de la protección descentralizada de las claves privadas utilizadas para llamar a funciones de contratos inteligentes con acceso restringido. Lo mejor es utilizar la descentralización de la clave pública a través de una firma múltiple que evita que una entidad tenga el control total del contrato.

Al final, la educación es una de las claves que permitirá que los sistemas financieros basados ​​en blockchain sean más seguros y confiables. Y la educación debería ser una de las principales preocupaciones de quienes buscan empleo en DeFi porque puede ofrecer recompensas deliciosas a todos los que pueden hacer una contribución viable.