Un hacker insertó una solicitud de extracción maliciosa en una extensión de código para desarrolladores de Ethereum. Según investigadores de la empresa de ciberseguridad ReversingLabs, el código afecta aplicaciones construidas con la máquina virtual de Ethereum (ETH). Sin embargo, aún no se sabe con exactitud qué efectos podría tener.
La empresa descubrió el código malicioso en una actualización de ETHcode, donde los hackers insertaron las líneas. Utilizaron un conjunto de herramientas de código abierto utilizado por desarrolladores de Ethereum.
Una publicación de ReversingLabs revela que dos líneas de código malicioso fueron insertadas en una solicitud de extracción de GitHub, que contenía 43 comentarios y 4.000 líneas actualizadas. La imagen siguiente muestra que el objetivo principal del código era agregar una nueva estructura de pruebas y características.
El usuario que instaló estas líneas, bajo el seudónimo de Airez299, no tenía historial de contribuciones en GitHub. Aun así, logró agregar las líneas el 17 de julio. Luego, la solicitud fue revisada por el revisor de IA de GitHub y por miembros del grupo 7finney, responsables de la creación de ETHcode.
Sin embargo, ninguno de ellos fue capaz de detectar las líneas maliciosas. Incluso el revisor de IA fue engañado por el hacker, ya que solo sugirió pequeños cambios. Esto indica que el hacker era profesional y pudo ocultar con precisión el origen malicioso del código.
Códigos maliciosos en la extensión de Ethereum
Airez299 logró ocultar la naturaleza de la primera línea de código malicioso, dándole un nombre similar al de un archivo preexistente. Con ello, consiguió ofuscar y desordenar el propio código, dificultando su lectura.
La segunda línea de código activa la primera. Según ReversingLabs, su objetivo final es crear una función automatizada (un PowerShell) que descargue y ejecute un script en lote.
ReversingLabs aún investiga qué hace exactamente este script, pero una de las hipótesis es que sirve para robar criptomonedas almacenadas en el ordenador de los usuarios. Una segunda hipótesis, más grave, es que el código podría comprometer los contratos de Ethereum en desarrollo por los usuarios de la extensión.
Petar Kirhmajer, autor de la publicación de ReversingLabs, afirmó que la empresa no tiene indicios ni evidencia de que el código malicioso haya sido utilizado realmente para robar tokens o datos. Sin embargo, Kirhmajer señala que ETHcode tiene 6.000 instalaciones y que la solicitud de extracción podría haberse propagado «a miles de sistemas de desarrolladores».
Esto es potencialmente preocupante, y algunos desarrolladores sugieren que este tipo de explotación ocurre con frecuencia en el mundo de las criptomonedas. El código puede activarse en cualquiera de esas máquinas y traer consecuencias aún imprevisibles.
Mucho código, pocos ojos
Según el desarrollador de Ethereum y cofundador de NUMBER GROUP, Zak Cole, muchos desarrolladores instalan paquetes de código abierto sin verificarlos adecuadamente. Cole afirmó que Ethereum tiene «mucho código, pero pocos ojos para vigilarlo».
«Es muy fácil para alguien insertar algo malicioso. Puede ser un paquete npm, una extensión de navegador, lo que sea», comentó.
Ejemplos recientes destacados de esto incluyen la explotación del Ledger Connect Kit en diciembre de 2023, que causó más de 2 millones de dólares en robos. La falla no ocurrió en las carteras, sino en el código de un servicio destinado a aplicaciones descentralizadas (dApps).
«Hay mucho código y pocos ojos en él. La mayoría de las personas simplemente asume que algo es seguro porque es popular o existe desde hace un tiempo, pero eso no significa nada», comentó Cole. El desarrollador también alertó que esta instalación podría haber sido parte de un ataque deliberado contra Ethereum.
“Además, recuerde que hay almacenes enteros llenos de agentes de Corea del Norte cuyo trabajo a tiempo completo es ejecutar estas explotaciones”, añadió.