Qué es Slopsquatting y Cómo Evitarlo

Si has visto este término desagradable flotando por ahí, probablemente te estés preguntando qué es slopsquatting y cómo podría afectarte. Este ataque desagradable no es el más fácil de detectar, pero hay formas de evitarlo para mantenerte más seguro.
Qué es Slopsquatting
Todo comienza con las alucinaciones de IA, que son cosas que la IA inventa. Para los propósitos del slopsquatting, las herramientas de IA sugieren paquetes de código abierto que en realidad no existen para que los desarrolladores los usen en su código.
Los ciberdelincuentes han descubierto que las alucinaciones de IA a menudo se repiten. Aprovechan esta falla creando paquetes maliciosos utilizando estos nombres alucinados y los suben a hosts de repositorios de código de confianza como GitHub. Cuando los desarrolladores piden a su plataforma de IA favorita que sugiera un paquete de código abierto, el chatbot sugiere uno de los nombres alucinados que los ciberdelincuentes están utilizando.

El resultado es que los desarrolladores están insertando estos paquetes maliciosos en su software. Una vez que se ejecuta, el daño está hecho y los atacantes obtienen acceso a cualquier dispositivo en el que se ejecute el código.
Si bien esto puede no sonar como un problema importante, un estudio encontró que de 16 modelos de generación de código de IA importantes, casi el 20 por ciento de los paquetes recomendados no existían. Aún peor es que el 43 por ciento de los nombres de paquetes alucinados se repitieron cada vez en 10 ejecuciones con el mismo aviso. Esto facilita mucho a los ciberdelincuentes elegir nombres y hacer que sus paquetes maliciosos sean sugeridos y utilizados repetidamente.
En el estudio, CodeLlama fue el peor infractor. Por otro lado, GPT-4 Turbo tuvo las alucinaciones más bajas. Sin embargo, solo porque el riesgo sea menor no significa que estés completamente a salvo.
Cosas a las que Debes Prestar Atención
Ya seas un desarrollador profesional, casual o completamente principiante, estás en riesgo de slopsquatting. En realidad, es una forma de typosquatting, donde una sola letra es la única diferencia entre un dominio legítimo y seguro y uno malicioso. Pero, al igual que el typosquatting, el slopsquatting es evitable si prestas atención a estas cinco cosas:
- Nombres de paquetes ligeramente mal escritos – Esta señal de advertencia no es una garantía, especialmente ya que la mayoría de los nombres de paquetes alucinados no tienen errores tipográficos. Aún así, si notas algo mal escrito, piénsalo dos veces antes de usarlo.
- Falta de discusiones o comentarios – Los paquetes con pocas o ninguna discusión pueden no ser los más seguros para usar. Podría significar que son completamente nuevos. O podría señalar que es un paquete falso que depende de las sugerencias de IA para que los desarrolladores lo encuentren y lo usen inocentemente.
- Advertencias de otros desarrolladores – Sé que es fácil confiar solo en las sugerencias de IA, pero tómate un momento para hacer una investigación adicional. Usa tu motor de búsqueda favorito y ve qué dicen otros sobre cualquier sugerencia de paquete antes de usarla tú mismo.
- No recomendado por otras plataformas – Si es posible, intenta los mismos o similares avisos en múltiples plataformas de codificación de IA. Si un paquete rara vez o nunca es recomendado, podría ser una señal importante de slopsquatting.
- Descripciones confusas – Se está volviendo más común que los desarrolladores confíen en la “codificación por vibra”, lo que significa que simplemente aceptan sugerencias sin ninguna verificación. Sin embargo, los paquetes maliciosos a menudo tienen descripciones confusas en los sitios donde están alojados.
También puedes evitar paquetes comunes de slopsquatting ya identificados en la naturaleza simplemente pidiendo a tu plataforma de IA favorita una lista.

Las Precauciones Más Importantes
Incluso cuando sabes qué buscar, el slopsquatting sigue siendo difícil de detectar en muchos casos. Dado que es tan nuevo, tomará tiempo para que los expertos en seguridad desarrollen un proceso confiable para identificar y eliminar paquetes maliciosos. Muchas plataformas de IA también están intentando entrenar sus modelos para reconocer nombres/paquetes alucinados y advertir a los desarrolladores antes de usarlos.
Hasta que eso suceda, tienes tres formas de prevenir que un paquete malicioso arruine tu software y cualquier dispositivo en el que pueda estar instalado.
La más importante es siempre ejecutar tu código en un entorno seguro y aislado. VirtualBox y VMWare son dos de las máquinas virtuales más populares y son gratuitas para usar. También hay entornos de sandbox basados en la nube, aunque la mayoría solo admiten unos pocos lenguajes. Replit es un favorito ya que admite más de 50 lenguajes.
La segunda es usar una herramienta de escaneo para verificar si un paquete es seguro o no. He encontrado que la Extensión Web Socket es una de las opciones más fáciles de usar. Es gratuita y funciona en numerosos sitios para escanear antes de que descargues algo. Actualmente, está disponible para navegadores basados en Chrome y Firefox.

Finalmente, siempre verifica cualquier cosa que sugiera la IA. Cuanto más dependas de la IA, más fácil será para los ciberdelincuentes aprovecharse. Usa la IA para ayudar con la codificación, pero verifica todas y cada una de las sugerencias antes de usarlas.
Si te conviertes en víctima de slopsquatting, informa a otros desarrolladores. Publica advertencias en redes sociales, Reddit y hosts de repositorios. Contacta al soporte de la plataforma de IA que estás utilizando para informar el nombre del paquete malicioso y ayudar a entrenar mejor los modelos de IA. Difundir la información ayuda a otros a protegerse.