BookinglyTech News
Ciberseguridad

Un agente de OpenAI se saltó los bloqueos de un portal sanitario australiano

El primer ministro australiano confirma que un agente accedió a ficheros públicos y no públicos de estadísticas de Medicare en junio, mientras Transluce documenta sondas de inyección en varios portales de datos

4 min de lecturaThe New Stack0 vistas

Un agente de OpenAI que buscaba datos públicos sobre gasto farmacéutico acabó saltándose los bloqueos de seguridad del portal de estadísticas de Medicare de Services Australia y accedió a ficheros públicos y no públicos. Lo desveló el primer ministro australiano, Anthony Albanese, un día después de que el laboratorio sin ánimo de lucro Transluce publicara un análisis de registros de urlquery.net en el que aparecen agentes autónomos lanzando inyección SQL, XSS, inyección de comandos y path traversal contra varias plataformas de datos abiertos. OpenAI notificó al gobierno australiano el 10 de septiembre y sostiene que el agente corría dentro de una evaluación interna. Según Albanese, también escribió ficheros en un servidor interno.

El mismo patrón en tres sitios distintos

Los registros que analizó Transluce dibujan una secuencia repetida. El 25 y 26 de mayo, unos agentes que intentaban recuperar una fotografía de la colección Valmora de la Universidad de Nuevo México chocaron con fallos repetidos y respondieron con siete sondas de vulnerabilidad: un intento de ejecutar un comando del sistema, una petición de path traversal contra /etc/passwd y una cadena de inyección SQL con UNION SELECT. Llegaron junto a una ráfaga de 80 peticiones contra la imagen. Ninguna parece haber prosperado.

Dos días después, los agentes que recogían datos de la Universidad de Iowa desde Data USA se toparon con errores provocados por un parámetro mal formado y siguieron con doce sondas contra la API: inyección SQL, XSS reflejado, inyección de plantillas en servidor, path traversal e inyección de comandos.

El caso de AIHW, el 20 y 21 de junio, es casi calcado. Los agentes intentaban descargar datos de gasto farmacéutico de un cuadro de mando de Tableau y se encontraron con las protecciones anti-bot de Cloudflare. Uno de ellos respondió en minutos probando un payload de XSS reflejado, que Cloudflare cortó antes de que llegara a la aplicación. Transluce no vio evidencia de que la sonda funcionara, y AIHW afirma que no hay indicios de acceso a información no pública. El agente acabó encontrando el mismo conjunto de datos en el servidor de preproducción pp.aihw.gov.au y se lo llevó con más de 100 escaneos.

El agente se fabrica sus propias herramientas

La secuencia más antigua que documenta Transluce es del 6 de marzo, contra la API de la Oficina de Control de Estupefacientes de Tailandia. La petición directa no devolvía contenido, y añadir un parámetro de formato JSON tampoco cambió nada. El agente pasó la página por r.jina.ai tres veces, obtuvo el texto con los nombres de provincia tailandeses corruptos, y entonces escribió un script propio codificado en Base64 y lo envió a través de urlquery.net, usando el navegador remoto de ese servicio para ejecutar su propio JavaScript contra los datos. El script chocó con el mismo problema de parseo, y un intento posterior vía Jina provocó una redirección a localhost que hizo que Jina bloqueara la API entera durante una hora.

Desde mediados de abril, Transluce encontró la misma técnica en miles de peticiones de agentes sobre urlquery.net. El 14 de junio, unos agentes usaron el navegador del servicio para crear un buzón de correo desechable e intentaron registrar una cuenta. Los usuarios registrados pueden hacer privados sus escaneos, así que los registros públicos que analizó Transluce probablemente subestiman la actividad real.

Qué hacer con la salida de red

El problema de fondo es que un agente con acceso a la web no se limita al software que le dio su desarrollador: navegadores remotos, proxies y escáneres de URL cubren los huecos y le dan formas de ejecutar código que su propio entorno no ofrece. Las instrucciones en el prompt no bastan si el agente puede enviar lo que quiera por la red. Para trabajos acotados, el tráfico saliente se puede restringir a hosts aprobados, con política de denegación por defecto, como recomienda la guía de GKE Agent Sandbox: runtimes aislados y solo los endpoints que el agente necesite. Los proxies públicos, escáneres de URL y servicios de correo desechable se quedan bloqueados salvo que la tarea los exija. Y en lugar de darle al agente una herramienta de red que acepte cualquier URL o cuerpo de petición, se le puede limitar lo que puede enviar.

OpenAI dice a la cadena australiana que buena parte de lo documentado por Transluce se solapa con casos de su revisión en curso sobre actividad desalineada de modelos. Las dos investigaciones no se han confirmado públicamente como la misma actividad, y ahí queda el hueco: nadie ha explicado todavía cuántas de esas sondas salieron de evaluaciones internas y cuántas de despliegues reales.