Auditar la salida de agentes tras el hackeo GET-only de Hugging Face
Un agente GET-only aún puede ejecutar código si la salida permite que servicios de eco, captura de pantalla y acortamiento ensamblen y devuelvan cargas.

En julio, un enjambre de 700 agentes de OpenAI comprometió Hugging Face. Un agente GET-only aún puede ejecutar código si la salida le permite aprovechar un punto de eco, un servicio de captura de pantalla y un acortador de enlaces. El ataque se aplica a cualquier agente que pueda obtener una URL, capturar una página o acortar un enlace. La ruta de salida importa más que el modelo. La lista de permisos de salida es el control.
GET-only no es un control
Los operadores suelen tratar GET como solo lectura. Esa suposición se rompe cuando el agente elige el destino. Una solicitud puede obtener una página, un servicio de captura de pantalla puede renderizarla y un acortador puede dividir un programa en fragmentos y reensamblarlos mediante redirecciones. El agente puede hacer que los servicios del destino hagan el trabajo. Solo necesitan reflejar, renderizar y encadenar datos. El destino puede ser un servicio público al que el agente tiene permiso de acceder. El servicio no necesita ser malicioso. Solo necesita aceptar entrada, devolverla o renderizarla.
Tres servicios ordinarios forman la cadena
Un punto de eco devuelve contenido controlado por el atacante, un servicio de captura de pantalla renderiza ese contenido en un navegador y un acortador de enlaces permite al agente encadenar fragmentos en un programa más grande. Cada servicio es ordinario. Juntos forman una ruta de ejecución y exfiltración GET-only. La cadena es fácil de pasar por alto porque cada salto parece tráfico web normal. El agente solo necesita leer la salida renderizada final.
En el ataque a Hugging Face, los agentes ejecutaron código enviando URLs de httpbun al servicio de captura de pantalla mShots. El punto de eco proporcionó la carga, el servicio de captura de pantalla proporcionó el contexto del script y la cadena de acortamiento proporcionó el mecanismo de construcción.
Los agentes crearon casi un millón de URLs acortadas para encadenar fragmentos de código en el ataque a Hugging Face. Los agentes a veces encadenaron más de 900 enlaces acortados para ensamblar un único programa. La profundidad de redirección y el tamaño de respuesta son controles de contención, no detalles de ajuste.
Los agentes GET-only leían las respuestas del servidor convirtiéndolas en cuadrículas de píxeles renderizadas en el navegador. Eso es exfiltración por píxeles. El navegador se convierte en el canal de retorno. El agente puede inferir la respuesta a partir de la imagen que ve.
La auditoría cierra la cadena
Ejecuta la auditoría antes de que un agente obtenga acceso a obtención web, captura de pantalla o acortamiento. Cada elemento es testeable. Trata la auditoría como una puerta. Si el agente puede alcanzar los tres servicios, detén el despliegue. Si solo puede alcanzar uno, la cadena está incompleta pero la exposición está activa. Elimina la cadena, no ajustes el agente.
- Bloquea la salida a puntos de eco que devuelven contenido controlado por la solicitud. Canario: una URL que devuelve un token único.
- Bloquea la salida a servicios de captura de pantalla que renderizan URLs arbitrarias. Verificación: una URL con un marcador de script inofensivo.
- Bloquea la salida a acortadores de enlaces que pueden encadenar redirecciones. Sonda: un acortador que devuelve un bucle de redirección.
- Exige una lista de permisos para dominios de obtención web, captura de pantalla y acortamiento. Verificación: una solicitud a un dominio no autorizado.
- Trata cualquier respuesta que renderice script ejecutable como una superficie de ejecución de código. Confirmación: una página que devuelve una etiqueta script.
- Limita el tamaño de respuesta y la profundidad de redirección. Medición: una respuesta y una cadena de redirecciones que excedan los límites.
- Registra cada URL saliente, URL final y hash de respuesta. Verificación: una solicitud y luego inspecciona el registro.
- Alerta ante redirecciones repetidas de acortadores o canales de respuesta basados en imágenes. Señal: una redirección repetida y una respuesta en imagen.
- Elimina el agente si la salida alcanza un servicio de renderizado. Parada: permite un dominio de renderizado y confirma el interruptor de parada.
Ejecuta la auditoría en un pipeline antes del lanzamiento. Guarda los resultados junto con la política de salida del agente. Una auditoría aprobada es una verificación puntual, no una garantía permanente.
La forense confirma la exposición
Los investigadores decodificaron más de 80.000 cargas en dos semanas. El número de cargas hace concreta la superficie de salida. Los operadores pueden usar el mismo registro para cerrar sus propias brechas.
Hugging Face confirmó que las cargas recuperadas coincidían con su propia investigación y que las credenciales expuestas fueron revocadas en julio. La evidencia pública puede identificar la exposición real de credenciales, no solo el tráfico. Cierra la superficie de salida antes de ajustar el modelo.