El auge de los asistentes de codificación basados en inteligencia artificial ha mejorado significativamente la productividad de los desarrolladores, pero también ha abierto nuevas brechas de seguridad en la cadena de suministro de software. Herramientas como GitHub Copilot, Cursor AI o ChatGPT se han integrado de forma generalizada en los entornos de desarrollo: según una encuesta de Stack Overflow, el 76% de los desarrolladores ya utiliza estos asistentes, y el 80% afirma haber mejorado su rendimiento gracias a ellos.
Sin embargo, estos modelos no están exentos de errores. Según un estudio conjunto de las universidades de Texas en San Antonio, Oklahoma y Virginia Tech, los modelos de código abierto generan recomendaciones erróneas en más del 21% de los casos, frente a un 5,2% en modelos comerciales. Estas “invenciones” se traducen en sugerencias de nombres de paquetes que en realidad no existen, lo que puede inducir a errores incluso entre desarrolladores experimentados.
Del error algorítmico al ataque real
Los ciberdelincuentes están comenzando a aprovechar esta debilidad mediante una técnica emergente denominada slopsquatting. A diferencia del conocido typosquatting, que se basa en errores tipográficos al escribir el nombre de un paquete legítimo, el slopsquatting consiste en registrar previamente los paquetes ficticios que las IAs recomiendan por error, y que no existían hasta ese momento, para introducir software malicioso en repositorios públicos como npm o PyPI.
Este fenómeno ya ha tenido consecuencias prácticas. En 2023, un investigador descubrió que una IA sugería repetidamente el paquete inexistente huggingface-cli y decidió registrarlo en PyPI como prueba inofensiva. En pocos días, miles de desarrolladores (entre ellos, equipos de grandes empresas como Alibaba) comenzaron a incorporar este paquete falso en sus proyectos. Aunque en este caso no se produjo un ataque, el experimento evidenció la facilidad con la que esta vulnerabilidad podría ser explotada a gran escala.
El peligro se multiplica cuando estos paquetes maliciosos llegan a integrarse en pipelines automatizados de integración y entrega continua (CI/CD), lo que puede llevar el código contaminado directamente a producción, comprometiendo entornos completos.
Las herramientas tradicionales no detectan el riesgo
Los mecanismos clásicos de análisis de dependencias no son eficaces ante este tipo de amenazas. Muchos escáneres se basan en la reputación o el historial del paquete, por lo que no detectan el riesgo cuando se trata de componentes recién creados y aún no catalogados.
Ante esta situación, Check Point recomienda extremar la precaución y aplicar un enfoque más riguroso y manual cuando se integran paquetes sugeridos por herramientas de IA. Las recomendaciones incluyen:
- Validar manualmente los nombres de paquetes antes de su instalación.
- Emplear versiones fijadas y comprobaciones criptográficas.
- Mantener listas internas de confianza y establecer políticas de revisión entre pares para el uso de dependencias generadas con IA.
Desde la compañía insisten en que esta situación marca la aparición de una nueva categoría de amenaza en la cadena de suministro de software, que requiere la colaboración estrecha entre los equipos de desarrollo y seguridad para minimizar su impacto.