El sector financiero descentralizado está creciendo a un ritmo vertiginoso. Hace tres años, el valor total bloqueado en DeFi era de apenas 800 millones de dólares. Para febrero de 2021, la cifra había aumentado a $ 40 mil millones; en abril de 2021, alcanzó un hito de $ 80 mil millones; y ahora se sitúa por encima de los 140.000 millones de dólares. Un crecimiento tan rápido en un nuevo mercado no podía dejar de atraer la atención de todo tipo de piratas informáticos y estafadores.

Según un informe de la compañía de investigación de criptografía, desde 2019, el sector DeFi ha perdido alrededor de $ 284,9 millones en hacks y otros ataques de explotación. Los hacks de los ecosistemas blockchain son un medio ideal de enriquecimiento desde el punto de vista de los hackers. Debido a que estos sistemas son anónimos, tienen dinero que perder y cualquier pirateo puede probarse y ajustarse sin el conocimiento de la víctima. En los primeros cuatro meses de 2021, las pérdidas ascendieron a 240 millones de dólares. Y estos son solo los casos conocidos públicamente. Estimamos pérdidas reales en miles de millones de dólares.

Relacionada: Resumen de hacks, exploits y atracos de criptomonedas en 2020

¿Cómo se roba el dinero de los protocolos DeFi? Hemos analizado varias docenas de ataques de piratas informáticos e identificado los problemas más comunes que conducen a los ataques de piratas informáticos.

Uso indebido de protocolos de terceros y errores de lógica empresarial

Cualquier ataque comienza principalmente con el análisis de la víctima. La tecnología Blockchain ofrece muchas oportunidades para el ajuste automático y la simulación de escenarios de piratería. Para que un ataque sea rápido e invisible, el atacante debe tener las habilidades de programación necesarias y el conocimiento de cómo funcionan los contratos inteligentes. El conjunto de herramientas típico de un pirata informático les permite descargar su propia copia completa de una cadena de bloques desde la versión principal de la red y luego ajustar completamente el proceso de un ataque como si la transacción se estuviera llevando a cabo en una red real.

A continuación, el atacante debe estudiar el modelo de negocio del proyecto y los servicios externos utilizados. Los errores en los modelos matemáticos de la lógica empresarial y los servicios de terceros son dos de los problemas más comúnmente explotados por los piratas informáticos.

Los desarrolladores de contratos inteligentes a menudo requieren más datos relevantes en el momento de una transacción de los que pueden poseer en un momento dado. Por lo tanto, se ven obligados a utilizar servicios externos, por ejemplo, oráculos. Estos servicios no están diseñados para operar en un entorno sin confianza, por lo que su uso implica riesgos adicionales. Según las estadísticas de un año calendario (desde el verano de 2020), el tipo de riesgo dado representó el porcentaje más pequeño de pérdidas: solo 10 hacks, lo que resultó en pérdidas por un total de aproximadamente $ 50 millones.

Relacionada: La necesidad radical de actualizar los protocolos de seguridad de blockchain

Errores de codificación

Los contratos inteligentes son un concepto relativamente nuevo en el mundo de las tecnologías de la información. A pesar de su simplicidad, los lenguajes de programación para contratos inteligentes requieren un paradigma de desarrollo completamente diferente. Los desarrolladores a menudo simplemente no tienen las habilidades de codificación necesarias y cometen errores graves que conducen a inmensas pérdidas para los usuarios.

Las auditorías de seguridad eliminan solo una parte de este tipo de riesgo, ya que la mayoría de las empresas auditoras del mercado no tienen ninguna responsabilidad por la calidad del trabajo que realizan y solo están interesadas en el aspecto financiero. Más de 100 proyectos fueron pirateados debido a errores de codificación, lo que provocó un volumen total de pérdidas de alrededor de $ 500 millones. Un claro ejemplo es el hackeo de dForce que tuvo lugar el 19 de abril de 2020. Los piratas informáticos utilizaron una vulnerabilidad en el estándar de token ERC-777 junto con un ataque de reentrada y se salieron con la suya con 25 millones de dólares.

Relacionada: La auditoría predeterminada para proyectos DeFi es imprescindible para el crecimiento de la industria

Préstamos flash, manipulación de precios y ataques mineros

La información proporcionada al contrato inteligente es relevante solo en el momento de la ejecución de una transacción. Por defecto, el contrato no es inmune a una posible manipulación externa de la información contenida en él. Esto hace posible todo un espectro de ataques.

Los préstamos flash son préstamos sin garantía, pero conllevan la obligación de devolver la criptomoneda prestada dentro de la misma transacción. Si el prestatario no devuelve los fondos, la transacción se cancela (revierte). Dichos préstamos permiten al prestatario recibir grandes cantidades de criptomonedas y utilizarlas para sus propios fines. Por lo general, los ataques de préstamos urgentes implican manipulación de precios. Un atacante puede vender primero una gran cantidad de tokens prestados dentro de una transacción, reduciendo así su precio, y luego realizar una serie de acciones a un valor muy bajo del token antes de volver a comprarlos.

Un ataque de minero es un análogo de un ataque de préstamo flash en blockchains que funciona sobre la base del algoritmo de consenso de prueba de trabajo. Este tipo de ataque es más complejo y costoso, pero puede eludir algunas de las capas de protección de los préstamos flash. Así es como funciona: el atacante alquila capacidades de minería y forma un bloque que contiene solo las transacciones que necesita. Dentro del bloque dado, primero pueden pedir prestados tokens, manipular los precios y luego devolver los tokens prestados. Dado que el atacante forma las transacciones que se ingresan en el bloque de forma independiente, así como su secuencia, el ataque es realmente atómico (ninguna otra transacción puede “encajar” en el ataque), como en el caso de los préstamos flash. Este tipo de ataque se ha utilizado para piratear más de 100 proyectos, con pérdidas por un total de alrededor de $ 1 mil millones.

El número medio de hacks ha ido aumentando con el tiempo. A principios de 2020, un robo representó cientos de miles de dólares. Al final del año, las cantidades habían aumentado a decenas de millones de dólares.

Relacionada: Los exploits de contratos inteligentes son más éticos que la piratería … ¿o no?

Incompetencia del desarrollador

El tipo de riesgo más peligroso involucra el factor de error humano. La gente recurre a DeFi en busca de dinero rápido. Muchos desarrolladores están poco calificados, pero aún intentan lanzar proyectos rápidamente. Los contratos inteligentes son de código abierto y, por lo tanto, los piratas informáticos los copian y modifican fácilmente en pequeñas formas. Si el proyecto original contiene los primeros tres tipos de vulnerabilidades, se extienden a cientos de proyectos clonados. RFI SafeMoon es un buen ejemplo, ya que contiene una vulnerabilidad crítica que se ha superpuesto a más de cien proyectos, lo que lleva a pérdidas potenciales que ascienden a más de $ 2 mil millones.

Este artículo fue coautor de este artículo. Vladislav Komissarov y Dmitry Mishunin.

Los puntos de vista, pensamientos y opiniones expresados ​​aquí pertenecen únicamente a los autores y no reflejan ni representan necesariamente los puntos de vista y opiniones de Cointelegraph.

Vladislav Komissarov es el director de tecnología de BondAppetit, un protocolo DeFi de préstamos con una moneda estable respaldada por activos del mundo real con ingresos periódicos fijos. Tiene más de 17 años de experiencia en desarrollo web.

Dmitry Mishunin es el fundador y director de tecnología de HashEx. Más de 30 proyectos globales se están ejecutando en integraciones de blockchain diseñadas por HashEx. Se auditaron más de 200 contratos inteligentes en 2017-2021.