Los hackers llenan GitHub con proyectos que ocultan código malicioso.

Los hackers llenan GitHub con proyectos que ocultan código malicioso.

8 hardware

Los ciberdelincuentes ocultan código malicioso con “caracteres Unicode invisibles”

Nuevas investigaciones de Aikido Security mostraron que a principios de marzo aparecieron 151 proyectos en GitHub que contenían código espía oculto. Los paquetes maliciosos utilizan caracteres Unicode que para el ojo humano parecen espacios o líneas vacías, pero al ejecutar JavaScript normalmente se convierten en byte‑code ejecutable y llegan a la función `eval()`.

Cómo funciona el ataque
1. Nombres de bibliotecas

Los paquetes llevan nombres de soluciones comerciales conocidas (por ejemplo, “React” o “Node.js”). Esto hace que los desarrolladores piensen erróneamente que son seguros y los incluyan en sus proyectos.

2. Código “legible” + fragmentos ocultos

La mayor parte del código parece una aplicación normal y legible. Dentro hay bloques llenos de caracteres “invisibles”. Al revisarlo manualmente desaparecen, pero al ejecutarse se activan.

3. Repositorios de prueba

Estos paquetes maliciosos ya se han detectado no solo en GitHub, sino también en NPM, Open VSX y el marketplace de Visual Studio Code.

Por qué es difícil notarlos
- Los cambios en los proyectos parecen normales: actualización de versión, corrección de errores, refactorización.

- Según expertos, los atacantes usan modelos lingüísticos grandes de IA para automatizar la falsificación de código. Esto permite preparar rápidamente más de 150 proyectos sin trabajo manual.

Historia de los caracteres
Los caracteres Unicode que corresponden a letras latinas se añadieron al sistema hace décadas. Desde 2024, los hackers los han usado para ocultar solicitudes maliciosas a chat‑bots y código en repositorios. Las herramientas tradicionales de análisis estático no los detectan; solo al ejecutar JavaScript pequeños decodificadores revelan el byte‑code real.

Qué hacer los desarrolladores
1. Verificar dependencias – antes de conectar bibliotecas externas, estudie detenidamente su código fuente e historial de cambios.

2. Revisiones automáticas – use linters, escáneres para “caracteres invisibles” y herramientas de análisis de comportamiento dinámico.

3. Actualizar – asegúrese de que los paquetes no se eliminen después de la descarga; esto puede indicar una amenaza oculta.

Perspectivas
Si las suposiciones sobre el uso de IA en este esquema se confirman, detectar y eliminar tales ataques será cada vez más difícil. Sin embargo, un enfoque consciente para revisar código fuente y dependencias sigue siendo la mejor defensa contra estas amenazas.

Comentarios (0)

Comparte tu opinión — por favor, sé amable y mantente en el tema.

Aún no hay comentarios. Deja un comentario y comparte tu opinión!

Para dejar un comentario, inicia sesión.

Inicia sesión para comentar