Un nuevo escáner de código abierto que audita las "habilidades de agentes" (agent skills) de la IA se está convirtiendo en una herramienta después de que investigadores demostraran que una habilidad no verificada puede recolectar silenciosamente claves SSH y credenciales de la nube. El escáner combina filtros de palabras clave, análisis de comportamiento, razonamiento impulsado por IA, ejecución en entornos aislados (sandbox) y detección de cambios para detener la próxima ola de ataques a la cadena de suministro contra desarrolladores asistidos por IA.

Por qué las habilidades de IA son importantes ahora

Los asistentes de modelos de lenguaje extensos (LLM), como Claude y GitHub Copilot, ahora dependen de las "agent skills": carpetas pequeñas y autónomas que le indican al modelo cómo realizar una tarea específica. GitHub añadió recientemente un comando de una sola línea que permite a los desarrolladores extraer estas habilidades directamente de repositorios públicos, convirtiéndolas en un gestor de paquetes de facto para flujos de trabajo impulsados por IA.

La conveniencia es innegable: una habilidad puede convertir una solicitud vaga como "limpia esta hoja de cálculo" en llamadas precisas a la API, manipulaciones de archivos o ediciones de código. Esa misma simplicidad permite que código malicioso se filtre en el paquete.

La página de advertencia de GitHub señala que las habilidades no se verifican antes de ser instaladas.

Cómo una carga útil oculta puede pasar desapercibida

A diferencia de un binario típico, una habilidad de IA no se carga de una sola vez. El modelo primero lee un resumen corto y luego obtiene el conjunto completo de instrucciones solo cuando la tarea parece relevante. Esta carga escalonada crea una ventana en la que un archivo malicioso puede permanecer inactivo, invisible para el usuario, hasta que el modelo decida invocarlo.

En un experimento de prueba de concepto, el investigador creó una habilidad falsa llamada csv-formatter que anunciaba la limpieza de hojas de cálculo. El código visible parecía inofensivo, pero una instrucción oculta añadía un "paso de diagnóstico". El paso no diagnosticaba nada; escaneaba el host en busca de claves privadas SSH y tokens de acceso de AWS, y luego enviaba los hallazgos a un servidor externo.

El comando malicioso también aparecía en un archivo de registro de cambios (changelog), un lugar que la mayoría de los humanos nunca inspeccionan, pero que la IA lee al evaluar el historial de versiones. La IA ejecutó silenciosamente una rutina de robo de credenciales mientras el desarrollador pensaba que la habilidad simplemente estaba dando formato a los datos.

La respuesta de código abierto

Para cerrar la brecha, el investigador empaquetó la lógica de detección en una herramienta de auditoría de código abierto. El escáner no depende de una sola técnica; utiliza varias capas de defensa:

  • Coincidencia de palabras clave detecta intentos obvios y descuidados que incluyen cadenas maliciosas conocidas.
  • Análisis de comportamiento marca instrucciones que leen archivos de credenciales y luego realizan llamadas de red.
  • Razonamiento de IA ejecuta un modelo secundario para evaluar si las instrucciones de una habilidad están ocultas deliberadamente al usuario.
  • Sandboxing ejecuta la habilidad en un entorno aislado, observando las acciones en tiempo real sin poner en riesgo el sistema host.
  • Detección de cambios monitorea habilidades de confianza en busca de modificaciones inesperadas, alertando a los mantenedores antes de que se instale una nueva versión.

El autor incluirá una suite de pruebas que reproduce el ataque csv-formatter y un benchmark público que mide las tasas de detección a través de un conjunto seleccionado de habilidades benignas y maliciosas.

Qué observar a continuación

  • Benchmarks de la comunidad: A medida que más investigadores publiquen muestras de habilidades maliciosas, el benchmark público necesitará actualizaciones periódicas para mantenerse relevante.

El surgimiento de las habilidades de agentes de IA marca una nueva frontera en las herramientas para desarrolladores, pero también abre la puerta a ataques de la cadena de suministro que eluden las revisiones de código tradicionales. Un escáner de código abierto que combina comprobaciones estáticas, observación dinámica y razonamiento de IA ofrece una primera línea de defensa práctica. Los desarrolladores que traten una habilidad como si fuera una unidad USB aleatoria pronto descubrirán que el coste de ignorar la verificación supera con creces la conveniencia de la asistencia instantánea de la IA.