tl;dr

  • Más de $4.500 millones han sido robados en exploits a contratos inteligentes en los últimos dos años y otros $3.000 millones por rug pulls a los usuarios en 2021.
  • El lavado de dinero representó solo el 0.05% de todo el volumen de transacciones de criptomonedas en 2021.
  • Las causas más comunes de los exploits en las cadenas de bloques son: lagunas en los contratos inteligentes, claves privadas comprometidas y suplantación de la interfaz de usuario del protocolo.

Tiempo de lectura: 8 minutos

Introducción

Desde el verano de 2020, el número de usuarios, protocolos y activos en DeFi se ha multiplicado, llegando a haber, a finales de 2021, más de $180.000 millones depositados en protocolos. Actualmente, esta cifra se estima en unos $40.000 millones. Para un ecosistema que todavía no llega a los tres años de edad, los números son impresionantes, pero las prácticas de seguridad no han conseguido mantenerse al mismo ritmo. En este tiempo ha habido numerosos exploits, llegando a acumular más de $4.500 millones robados, algo que hace levantar las cejas a más de un regulador y que sería poco imaginable en un banco tradicional. Como se observa en la figura 1, en el año 2021, la suma total de criptomonedas (valoradas en USD) robadas mediante rug pulls ascendió a casi $3.000 millones.

Figura 1. Total de criptoactivos robados (en USD) en rug pulls vs número de rug pulls en los años 2020 y 2021. Fuente: Chainalysis.

Si esta tendencia de exploits y rug pulls continúa, es difícil imaginar que DeFi se convierta en una industria en la que los usuarios puedan confiar. Es por ello por lo que se deben analizar y mitigar sus vulnerabilidades de seguridad. Este artículo detalla los exploits más habituales, sus causas más comunes y posibles mitigaciones, qué tipos de rug pulls existen y cómo desaparece el dinero robado.

Exploits más habituales

Los puentes entre cadenas de bloques topan la clasificación de protocolos más afectados por exploits. La gran cantidad de activos que suelen tener este tipo de protocolos los hace muy atractivos para los hackers. Para trasladar los activos de una cadena de bloques a otra, un usuario debe, por lo general, depositar el activo en una bóveda en la cadena de origen para, seguidamente, acuñar un activo equivalente en la cadena de destino.

Los exchanges centralizados con buenas prácticas de seguridad suelen almacenar la mayoría de sus fondos en carteras frías. No obstante, algunos con políticas menos rigurosas conservan muchos de los activos de sus usuarios en carteras calientes, lo que aumenta considerablemente el riesgo de pérdida. Los hackeos a Bitmart, Ascendex y Kucoin son un ejemplo de ello.

Otros protocolos, como los agregadores de interés o los de préstamos, suelen ser los objetivos más comunes de los hackers, pero las cantidades robadas son, habitualmente, mucho menores.

Causas más comunes de los exploits

Generalmente, las causas más comunes de exploits son las que se describen a continuación:

Lagunas en los contratos inteligentes

Este suele ser el riesgo más difícil de mitigar ya que existen multitud de vectores de ataque en función del tipo de protocolo. Es por ello por lo que encabeza las clasificaciones de número de exploits (casi 3 de cada 4) y la cantidad total robada. Por ejemplo, para protocolos de préstamos o exchanges descentralizados (DEX), los exploits suelen usar una combinación de flash loans y/o la manipulación del origen del precio de un activo de un oráculo. Este es el caso del exploit que sufrió Inverse Finance, en el que el hacker pudo manipular el precio de uno de los colaterales permitidos en el protocolo (yvcrv3Crypto) y tomar prestado una cantidad inusual de $DOLA, vaciando así los depósitos para préstamos.

También existe la posibilidad que el contrato inteligente tenga errores que puedan llevar a pérdidas sustanciales de un protocolo. Por ejemplo, Compound distribuyó a sus usuarios más activos de su tesorería de lo que pretendía debido a un bug en un contrato escrito por uno de los miembros de su comunidad.

Para mitigar los riesgos de los contratos inteligentes, existen dos métodos principales: verificación formal automática o auditorías de seguridad. El primero de ellos es un software que genera posibles escenarios de exploit para detectar bugs en los contratos inteligentes. Protocolos como AAVE, Compound, MakerDAO o Sushiswap, entre otros, utilizan este tipo de software para minimizar el riesgo de exploit. El segundo método se realiza de forma manual por empresas de auditoría DeFi, las cuales proveen una visión global de los riesgos del contrato y generan una lista de los problemas y bugs encontrados, a la vez que proponen recomendaciones para solucionarlos.

Claves privadas comprometidas

Este tipo de ataques son menos frecuentes que los anteriores, pero, generalmente, producen una cantidad robada mayor por cada hackeo (una media de $90 millones), ya que suelen centrarse en conseguir las claves privadas de puentes, carteras calientes de exchanges centralizados o tesorerías de protocolos. Es, a su vez, el vector de ataque más evitable. Dentro de este tipo existen dos subcategorías: la falta de seguridad operacional al almacenar las claves y la centralización de los que guardan las claves. Si bien los métodos para conseguir las claves todavía no están claros, muchos especulan que estos exploits se realizan a través de ataques de phishing de ingeniería social.

El caso de Ronin, el mayor hackeo de criptomonedas de la historia, es un ejemplo de este tipo de exploit. Si bien los ataques de phishing están muy extendidos, el equipo de la red Ronin podría haber eliminado el punto de fallo único almacenando las claves de forma más segura, o almacenándolas en diferentes dispositivos de diferentes plataformas, o aumentando el número de claves necesarias para poder mover los fondos.

Suplantación de interfaz de usuario

El objetivo de este ataque no son los fondos que manejan los protocolos, sino los de los usuarios. Normalmente, esto implica reemplazar la dirección IP de la web del protocolo real por una parecida mediante métodos como el envenenamiento de caché DNS.

Uno de los casos más sonados en el que se usó este vector de ataque fue el de BadgerDAO. Este tipo de ataques son difíciles de defender por parte de los protocolos ya que la vulnerabilidad normalmente yace en un tercero. La educación de los usuarios para no aprobar transacciones con cantidades ilimitadas de tokens y la elección de proveedores de servicios más confiables por parte de los protocolos son los dos atenuantes principales ante estos ataques.

Algunas carteras, como Rabby, ya incluyen funcionalidades que identifican qué tokens podrían estar en riesgo y permiten revocar la aprobación innecesaria de tokens.

Rug pulls

Los rug pulls son estafas que se perpetúan lanzando un token, normalmente con un contrato inteligente malicioso en la cadena de bloques, y convenciendo a los usuarios que lo compren para, posteriormente, liquidarlos sin previo aviso. Esta es, probablemente, la mayor amenaza para aumentar la confianza de los usuarios en las criptomonedas. Existen dos tipos principales de rug pulls: duros y blandos.

Rug pulls duros

Los rug pulls duros, aquellos en los que el estafador programa el token para robar a los usuarios, se pueden dividir en varias subcategorías:

  • Honeypots: impiden a los compradores de un token revenderlo. El ejemplo más conocido es el del token $SQUID.
  • Acuñación escondida: permite que ciertas direcciones (EOAs personales de los creadores del token) acuñen nuevos tokens mediante una función escondida en el contrato.
  • Renuncia falsa de la propiedad del contrato: el estafador simula haber renunciado al control del contrato del token. En realidad, éste sigue teniendo el control sobre funciones que permiten acuñar nuevos tokens, establecer tasas abusivas, etc.
  • Modificadores escondidos de balance: permite que una EOA o el mismo contrato del token modifique los balances de los poseedores del token.
  • Modificadores escondidos de tasas: permite a los desarrolladores cambiar el valor de las tasas impuestas a los compradores/vendedores de un token, pudiendo establecerlas hasta en un 100% del total de la transferencia.
  • Modificadores escondidos de cantidades máximas de transacción: permite a los desarrolladores establecer cantidades máximas del token que pueden ser transferidas.
  • Transferencias escondidas: permite a los desarrolladores enviar tokens desde las direcciones de otros usuarios a las suyas propias.

Rug pulls blandos

Los rug pulls blandos son aquellos en los que se promociona un token para robar a los usuarios. Antes de realizar la estafa, se suele crear una página web con marketing engañoso, se anuncian colaboraciones inexistentes, se sobredimensiona o se miente sobre el equipo de desarrollo, se autoasignan cantidades de tokens muy superiores a las anunciadas públicamente, se usan bots en las redes sociales para exagerar la sensación de sentimiento positivo entre la comunidad, etc.

¿Cómo escapan los fondos?

Si bien la mitigación de posibles riesgos de los contratos inteligentes es clave, saber dónde van y cómo recuperar los fondos robados es también muy importante.

Tornado Cash

Tornado Cash es un protocolo de mezclado de dinero que provee privacidad de pagos a los usuarios ofuscando su trazabilidad. Si bien Tornado Cash tiene un caso de uso legítimo, ya que provee a los usuarios de privacidad en las transacciones, es una de las formas más comunes de los estafadores para lavar el dinero robado. Tras descubrir que Lazarus Group de Corea del Norte había utilizado Tornado Cash para blanquear el dinero del exploit al puente de la red Ronin, el gobierno de EEUU incluyó al protocolo en la lista de sancionados de la OFAC, y por ende, poniendo en la lista negra todas aquellas cuentas que habían interactuado alguna vez con el protocolo. La escalada de sanciones y consecuencias derivadas de esto han hecho que se reduzca drásticamente el volumen de activos en el protocolo y la posibilidad que se cree un fork.

Aztec

La red Aztec, que usa tecnología de conocimiento cero, es una alternativa potencial a Tornado Cash. En lugar de almacenar los fondos de los usuarios a través de los saldos de las cuentas, Aztec realiza un seguimiento de los fondos mediante la emisión de notas que representan los activos que posee un usuario. Estas notas funcionan como pagarés y se pueden canjear por los activos subyacentes en una proporción de 1:1. Como estas notas están encriptadas, nadie podrá conocer el propietario o su valor. Los propietarios pueden canjear los activos subyacentes generando una prueba de conocimiento, lo que demuestra su propiedad y el valor contenido.

Tras las advertencias de algunos exchanges centralizados a sus usuarios para que no interactúen con Aztec, la red ha anunciado que implementará un límite de depósito basado en las direcciones IP de los usuarios, lo que lleva a algunos a preguntarse si Aztec está priorizando el cumplimiento de la ley sobre la privacidad de los usuarios.

La siguiente figura muestra el ascenso de DeFi en los últimos años como destino de fondos robados.

Figura 2. Destinos más populares de fondos robados. Fuente: Chainalysis.

Conclusiones

La empresa Chainalysis destaca en su informe The 2022 Crypto crime report que los cibercriminales han blanqueado criptomonedas por valor de $33.000 millones desde el año 2017. Según datos del mismo informe, en el año 2021, el blanqueo de capitales en criptomonedas supuso alrededor de un 0.05% del total del volumen de las transacciones. En comparación, la Oficina de Drogas y Crimen de las Naciones Unidas estima que se blanquean entre $800.000 y $2 trillones de dinero fiduciario cada año, equivalente al 5% del PIB mundial.

Estos números no tratan de minimizar los problemas de exploits y hackeos relacionados con las criptomonedas, sino que tratan de resaltar que el blanqueo de capital y las estafas son un problema existente en cualquier tipo de dinero. De hecho, la mayor diferencia entre el blanqueo de capital en criptomonedas y dinero fiduciario es que en el primero es más fácil poder seguir la trazabilidad.

Si DeFi quiere madurar como industria, necesita prácticas de seguridad más exigentes. Si bien los vectores de ataques que se centran en atacar las lagunas en los contratos inteligentes son difíciles de defender, la industria debe seguir imponiendo el uso de auditorías de seguridad y de detectores de bugs automáticos que permitan escalar el análisis y la detección de errores en los contratos inteligentes.

 

Referencias

  • “DeFi Exploits: Trends, Patterns, and Lessons Learnt” por Token Terminal.
  • “The 2022 Rug Pull Report. Everything you need to know about crypto and DeFi scams” por Solidus Labs.
  • “The 2022 Crypto Crime Report” por Chainalysis.
  • Rekt News