123% más CVE notificadas al día en 2026 que el año pasado.

Cadena de suministro

¿Qué es el slopsquatting?

El slopsquatting es un ataque que registra nombres de paquetes inventados por asistentes de programación con IA. Cuando un modelo sugiere un paquete que no existe, un atacante puede publicar malware con ese nombre, y el siguiente desarrollador o agente que siga la sugerencia lo instalará. Es typosquatting sin la errata.

Actualizado el

De dónde viene el nombre

El término es un juego de palabras con typosquatting, donde «slop» significa contenido de IA de baja calidad. Se atribuye a Seth Larson, security developer-in-residence de la Python Software Foundation, en 2025.

Cómo se produce la alucinación de paquetes

Un modelo de lenguaje escribe lo que parece probable. Un nombre verosímil, como el de una biblioteca para una tarea común, puede parecer tan probable como uno real, de modo que el modelo a veces escribe un import o un comando de instalación para un paquete que nadie publicó nunca.

Un estudio presentado en USENIX Security 2025 probó 16 modelos populares con 576.000 muestras de código. La proporción de paquetes alucinados fue de al menos un 5,2 % en los modelos comerciales y un 21,7 % en los de código abierto, con 205.474 nombres únicos inventados. Los investigadores describieron el problema como persistente y sistémico.

Cómo funciona un ataque de slopsquatting

  1. Recopila los nombres. El atacante hace a los modelos preguntas de programación habituales y anota qué paquetes no existen.
  2. Los publica. Registra esos nombres en npm o PyPI, con un paquete que funciona y oculta una carga maliciosa.
  3. Espera. Un desarrollador pega la sugerencia, o un agente de programación ejecuta la instalación por su cuenta.
  4. Se ejecuta. Un script de instalación se ejecuta en el equipo del desarrollador o en CI, con acceso a tokens y secretos.

Slopsquatting frente a typosquatting

Typosquatting Slopsquatting
Origen del error Una persona escribe mal un nombre Un modelo inventa un nombre
El nombre Parecido al de un paquete real Verosímil, sin ningún paquete real detrás
Quién lo instala Un desarrollador Un desarrollador, o un agente sin que ninguna persona lea el nombre
Por qué es más difícil detectarlo Las comprobaciones de parecido pueden compararlo con nombres populares Puede que no haya ningún nombre popular con el que compararlo

Por qué los agentes de programación aumentan lo que está en juego

Con un asistente de chat, una persona lee la sugerencia antes de ejecutarla. Un agente de programación puede escribir el código, añadir la dependencia y ejecutar la instalación en un solo paso. Desaparece la revisión humana que detecta muchos nombres falsos, y la instalación ocurre allí donde se ejecute el agente, a menudo con las credenciales del desarrollador o dentro de CI. Para una visión más amplia, consulte seguridad para el desarrollo asistido por IA.

Cómo protegerse del slopsquatting

  • Verifique antes de instalar. Compruebe que un paquete sugerido existe, tiene un repositorio real y cuenta con un historial. Un paquete creado la semana pasada merece desconfianza.
  • Revise los cambios en el lockfile. Las dependencias nuevas deben verse en las pull requests, independientemente de quién o qué haya escrito el código. Consulte lo que registra un lockfile.
  • Limite lo que pueden hacer los agentes. Exija aprobación antes de que un agente instale paquetes, y ejecute los agentes en un sandbox sin credenciales de producción.
  • Retrase la adopción de paquetes nuevos. Ayuda una regla contra los paquetes publicados en los últimos días.
  • Desactive los scripts de instalación donde su build lo permita.
  • Restrinja el tráfico saliente de los builds. Un paquete que no puede llegar al atacante no puede enviar sus secretos a ninguna parte. Consulte política de salida de GitHub Actions.

Un paquete de slopsquatting nuevo no tiene aviso, por lo que ni un escaneo SCA ni npm audit lo notificarán. Para ver la lista completa de controles, consulte buenas prácticas de seguridad de la cadena de suministro de software.

Cómo limita CRACI los daños

CRACI no detecta nuevos paquetes maliciosos, así que examínelos con otras herramientas. Lo que hace es limitar el daño cuando uno llega a su build. Como su runner de GitHub Actions, aplica una política de salida que bloquea las conexiones que el build no necesita, lo que le protege incluso cuando nadie ha visto antes el ataque. También registra cada paquete que descargó cada job, así que, una vez conocido un paquete malicioso, puede ver qué builds lo incorporaron.

Slopsquatting: preguntas frecuentes

¿Qué es el slopsquatting?

Un ataque en el que alguien registra nombres de paquetes que inventan los asistentes de programación con IA, de modo que quien sigue la sugerencia instala el código del atacante.

¿Quién acuñó el término slopsquatting?

Se atribuye a Seth Larson, security developer-in-residence de la Python Software Foundation, en 2025.

¿Qué es un paquete alucinado?

Un nombre de paquete que un modelo de IA sugiere aunque no exista ningún paquete con ese nombre. La investigación ha detectado esto en una proporción significativa de muestras de código generadas.

¿En qué se diferencia el slopsquatting del typosquatting?

El typosquatting depende de que una persona escriba mal el nombre de un paquete real. El slopsquatting depende de que un modelo invente un nombre que nunca existió, así que no hay ningún paquete real con el que compararlo.

¿Cómo se previene el slopsquatting?

Compruebe que los paquetes sugeridos son reales, revise las dependencias nuevas en las pull requests, exija aprobación antes de que los agentes instalen nada y restrinja el tráfico saliente de los builds.

Contenga el paquete que nadie quiso instalar

Bloquee las conexiones salientes que sus builds no necesitan y conserve un registro de cada paquete que descargaron.

Reservar una demo