Principales vulnerabilidades en los Smart Contracts que afectan a los NFTs
- Un Smart Contract es un contrato digital en la blockchain que se ejecuta de forma automática cuando ciertas condiciones predeterminadas se cumplen.
- Entre más complejo es el Smart Contract más probabilidades tiene de incluir vulnerabilidades las cuales pueden afectar a los NFT.
- Aunque el smart contract no incluya vulnerabilidades, un pequeño error por parte del usuario permitirá que los estafadores hagan de las suyas.
Los tokens no fungibles (NFT) han llamado la atención del mundo dada su extraordinaria revalorización. Sin embargo, una pregunta que todos los inversores que deciden incursionar en este sector deben hacerse es: ¿Los NFTs son seguros?
Y es que, si se sigue de cerca el sector, se notará que han existido diversos problemas con los NFT. No obstante, el problema no radica en los NFT en sí mismos.
Es fundamental recordar que los NFT son smart contracts, un contrato digital almacenado en la blockchain que se ejecuta automáticamente cuando ciertas condiciones y términos predeterminados se cumplen. De esta manera, cuando un NFT se acuña, se hace a través de un Smart Contract que asigna la propiedad y gestiona la transferibilidad del token.
Pero, en esencia, los Smart Contracts son un código con declaraciones simples de “si/cuando… entonces…” en la blockchain. Por lo que, mientras más complejo es el código, hay una mayor probabilidad de que aparezcan errores o vulnerabilidades dentro del contrato digital.
Evidentemente, los desarrolladores revisan su código una y otra vez en busca de posibles vulnerabilidades, pero siempre existe la posibilidad de que una falla o más se ejecuten en el futuro y causan problemas. Especialmente si alguien encuentra la posibilidad de aprovechar un error, sobre todo si se trata de un activo de valor como un NFT.
De aquí se desprende la necesidad de realizar con cierta frecuencia auditorías de seguridad para atender vulnerabilidades antes de que sean aprovechadas. De hecho, por ello existen compañías como Consensys que se dedican a ejecutar dichas auditorías.
A continuación encontrará las vulnerabilidades o fallas más comunes que están presentes en los Smart Contracts y que afectan a los NFTs:
Vulnerabilidades en la venta de NFT
Consiste en la oportunidad que toman diversos piratas informáticos al momento de la venta de tokens NFT. Por ejemplo, durante el lanzamiento de la colección de Adidas NFT Into the Metaverse, un atacante logró eludir el límite de compra de NFT por wallet y adquirió 330 NFT.
Son fallas o vacíos dentro de los smart contracts que utilizan los atacantes informáticos para obtener un beneficio en el proceso de compra. Otro ejemplo posible, una vulnerabilidad que le permita al usuario comprar un NFT y recuperar el dinero del smart contract.
Vulnerabilidad del mercado NFT
Como se ha explicado previamente en Bitcoin México, existen una gran variedad de mercados NFTs, cada uno con sus ventajas y desventajas. Estas plataformas son las responsables de ayudar a las personas a interactuar con los activos digitales.
En sí, esta vulnerabilidad no es directamente del NFT, sino de la plataforma en la que se está comercializando. Por ejemplo, se han presentado vulnerabilidades que los atacantes han explotado para adquirir costosos NFT por sus precios de cotización anteriores para luego venderlos a su precio presente.
Claves privadas que pasan a ser públicas
¡Las claves privadas deben ser protegidas a capa y espada! Es necesario recordar que son las claves privadas las que le otorgan la propiedad de los activos asociados a una wallet a un determinado usuario, por lo que, cualquiera que acceda a dichas claves, tendrá la propiedad de los activos así hayan sido de otra persona previamente.
En el transcurso de los años, los atacantes informáticos han encontrado nuevos métodos para robar las claves privadas de los usuarios y acceder a sus tokens; siendo el phishing una de las metodologías más utilizadas.
De hecho, en realidad, el phishing es una herramienta empleada por los atacantes para robar cualquier tipo de información, por ejemplo, claves bancarias o números de tarjetas de crédito. Es decir, no solo afecta a la comunidad cripto.
Un ejemplo es el vivido recientemente por algunos usuarios de OpenSea los cuales experimentaron un ataque de Phishing. El atacante envió correos electrónicos a los usuarios haciéndose pasar por OpenSea y los engañó para que firmaran los datos con MetaMask y robó sus fondos.
Ataques de reingreso
Hay plataformas que implementan una función de devolución de llamadas. Esta función tiene por objetivo ayudar a integrar proyectos NFT. pero, esta función puede ser explotada por los atacantes.
Un ataque de reingreso sucede cuando una función realiza una llamada externa a otro contrato inteligente que no es de confianza. Posteriormente, el contrato que no es de confianza ejecuta una llamada recursiva a la función original en busca de drenar los fondos.
Estafas y oportunidades para el lavado de dinero
Dado que la industria de los NFT se encuentra en un proceso de desarrollo, y como suele suceder en los inicios de cualquier mercado, los atacantes y criminales encuentran oportunidades para efectuar sus actividades ilegales.
En general, Discord es la plataforma principal a través de la cual los proyectos NFT ejecutan sus estrategias de marketing junto con Twitter para atraer la atención del público.
Uno de los objetivos de cualquier proyecto NFT es venderse y atraer al público antes de que ocurra el mint, y es que los usuarios que invierten en una colección NFT antes del mint, realmente apuestan por el futuro del proyecto.
No obstante, han existido proyectos que se hacen valer de una estrategia de marketing para atraer al público, pero sus únicos objetivos son estafar a la gente. Un ejemplo es Cool Kittens, un proyecto que vendió más de 2,200 NFT por un precio de $ 70 dólares cada uno y, luego de la venta, desaparecieron con el dinero.
Colecciones NFT que han sufrido de vulnerabilidades
CryptoPunks
Una de las colecciones NFT más populares que han existido, experimentó un error importante en 2017. Luego de que se vendieron 10,000 Punks, se descubrió un error en el que el smart contract permitía que se realizarán las ventas, pero no se recibió ningún pago real.
Esto conllevo a que LarvaLabs, creadores de las colecciones, relanzaron el proyecto con un smart contract nuevo y actualizado.
Meebits
Otra colección creada por LarvaLabs es Meebits cada uno de los NFTs fueron acuñados con rasgos aleatorios, pero unos usuarios descubrieron como preferir los rasgos para obtener exactamente los que querían.
Esto sucedió porque en el smart contract se incluyó un archivo que mostraba las características de cada ID de token Meebit, por lo tanto, si un usuario iniciaba el mint de un Meebit, podía cancelarlo si veía que el token no era raro.
¿Cómo del mercado NFTs un espacio cada vez más seguro?
Como se evidencia, mantener seguro el mercado de los NFTs es una tarea tanto de los usuarios como de los desarrolladores de proyectos y es que, aunque el smart contract no incluya vulnerabilidades, un pequeño error por parte del usuario permitirá que los estafadores hagan de las suyas.
Entonces, ¿qué hacer?
- Los equipos detrás de las colecciones NFT deben instruir sobre las medidas de seguridad necesarias. Es decir, habilitar la autenticación de dos factores, contraseñas seguras y guardarlas fuera del Internet y usar una wallet fría.
- ¡Realizar auditorías del Smart Contract! Una tarea clave por parte del equipo detrás de cada colección NFT es inspeccionar los contratos inteligentes para encontrar las vulnerabilidades. Y, antes de lanzar el proyecto, debe recurrir a una empresa de auditoría de contratos inteligentes.
- Adherirse a la descentralización: Una plataforma centralizada equivale a almacenar las claves privadas de los usuarios en la plataforma. Y, por consiguiente, cualquier ataque hacia la plataforma pone en riesgo las claves privadas y activos de los usuarios.
Ahora, más enfocado en el usuario, hay algunas consideraciones:
- ¡No acceda a enlaces desconocidos o extraños! Siempre debe verificar los enlaces a los que accede con cautela para asegurarse que sea legítimo.
- Antes de hacer el mint de un NFT, asegúrese de verificar la dirección del contrato, este debe especificar dónde se acuñó el NFT.
- La regla básica: Si parece ser demasiado bueno para ser verdad, ¡probablemente no lo sea!
- Siempre confirme estar haciendo el mint en el sitio web del proyecto verificado.
- En Discord, pendiente de los estafadores que escriben por mensaje privado promocionando proyectos.
- Ninguna plataforma le solicitará sus claves privadas nunca.
- ¡Sea curioso! No tenga miedo de hacer preguntas a los desarrolladores de proyecto, cuestione su seguridad y debe priorizarla.
- Investigue a fondo el equipo detrás de cualquier colección NFT e indague su trayectoria.
¿El mercado NFT es extremadamente inseguro?
No. Ciertamente, los NFTs se ven afectados por posibles vacíos o vulnerabilidades que los atacantes informáticos pudiesen encontrar en los smart contracts, no obstante, esto aplica también para las Finanzas Descentralizadas (DeFi) u cualquier producto o servicio que utilice los contratos inteligentes.
Asimismo, es relevante hacer mención a una investigación realizada por Daniel Perez y Benajmin Livshits, del Imperial College London, llamado ‘Smart Contract Vulnerabilities: Vulnerable Does Not Imply Exploited’, es decir, que la vulnerabilidad de los contratos inteligentes no necesariamente implica que sean explotadas o aprovechadas por atacantes.
En este sentido, las conclusiones del artículo de investigación es que, de 23,327 contratos vulnerables reportados por seis proyectos académicos, solo el 1.98% de ellos fueron aprovechados por parte de atacantes por consiguiente, únicamente el 0.27% de los fondos en ETH que estaban comprometidos realmente estuvieron en riesgo. De esta manera, Perez y Livshits demuestran que los fondos estuvieron concentrados en un pequeño número de contratos que no son vulnerables en la práctica.
Pensamientos finales
Sí, al ingresar a un mercado como los NFT se corren distintos tipos de riesgos, sin embargo, esto no es distinto a navegar por Internet, emplear un cajero automático para retirar tarjeta en efectivo, u otras actividades que realizamos en la cotidianidad. Es decir, toda decisión conlleva sus riesgos y sus beneficios.
Realmente lo importante es conocer cuáles son los riesgos y las vulnerabilidades porque, al tenerlas en cuenta, se pueden tomar acciones para reducir las probabilidades de sufrir un problema.
Al final, ninguna decisión de inversión debe ser tomada a la ligera. Y, en el caso de los NFTs, es fundamental evaluar si el proyecto realiza auditorías de sus contratos inteligentes.
¡No permitas que en este 2022 las vulnerabilidades de los Smart Contracts te afecten!
Te podría interesar: