← Últimos artículos
💻 computer science

Don't Show What They Can't See: Authorization-First Schema Context for Secure Text-to-SQL

Este artículo propone un marco de trabajo basado en la autorización previa que aplica un control de acceso detallado durante la recuperación del esquema para evitar la exposición de metadatos de la base de datos no autorizada en sistemas de texto a SQL basados en LLM, logrando cero filtraciones de objetos no autorizados mientras mantiene la utilidad de la recuperación y reduce significamente las referencias SQL no autorizadas.

Autores originales: Jianan Jiang, Zhenxin Zhang, Yucheng Long, Zhihao Li, Yaqi Wu, Yu Wang

Publicado 2026-09-28
📖 6 min de lectura🧠 Análisis profundo

Autores originales: Jianan Jiang, Zhenxin Zhang, Yucheng Long, Zhihao Li, Yaqi Wu, Yu Wang

Artículo original bajo licencia CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

Imagine a un bibliotecario que puede traducir instantáneamente sus preguntas habladas en comandos de biblioteca precisos, encontrando exactamente los libros que necesita entre millones de estantes. Esta es la promesa de los sistemas modernos de inteligencia artificial que convierten el lenguaje natural en consultas de bases de datos. Estos sistemas dependen de un mapa detallado del contenido de la biblioteca —una lista de cada tabla, columna y conexión entre ellas— para comprender lo que usted está preguntando. En un entorno seguro, sin embargo, no toda la parte de ese mapa debe ser visible para todas las personas. Así como un cajero de un banco no puede ver los códigos de la bóveda de todas las cuentas, un usuario solo debería ver las partes de la base de datos a las que tiene permitido acceder. El peligro surge cuando el sistema accidentalmente muestra todo el mapa al traductor incluso antes de que comience a trabajar. Si el traductor es engañado o manipulado, podría revelar la existencia de tablas secretas o columnas sensibles, proporcionando a un atacante un plano para un ataque dirigido, incluso si nunca llega a ver un solo registro real.

Investigadores de la Universidad de Guangzhou y la Universidad de Xidian han desarrollado una nueva forma de manejar este problema, asegurando que el traductor solo vea las partes del mapa que el usuario tiene permitido ver. Su enfoque invierte el orden tradicional de las operaciones. En lugar de reunir toda la información, filtrar las partes prohibidas y luego pedirle a la inteligencia artificial que escriba la consulta, primero verifican los permisos del usuario. Construyen una versión pequeña y segura del mapa de la base de datos que contiene solo las tablas y columnas que el usuario está autorizado a tocar. Solo este mapa seguro y limitado se le muestra al sistema de IA. Esto evita que la IA llegue a conocer las secciones prohibidas, de modo que incluso si un actor malintencionado intenta engañar al sistema para que revele secretos, no hay secretos en el contexto para revelar.

El equipo probó este método en una colección de 20 bases de datos diferentes que contenían 240 preguntas específicas emparejadas con diferentes roles de usuario. En el enfoque estándar, donde el sistema ve el mapa completo de la base de datos antes de filtrar, la IA estaba expuesta a un promedio de 35.5 objetos no autorizados —como tablas secretas o columnas ocultas— cada vez que procesaba una solicitud. Con el nuevo método de "autorización primero", ese número cayó a cero. El sistema mantuvo con éxito toda la información no autorizada fuera de la vista de la IA incluso antes de que comenzara a pensar. Crucialmente, esta seguridad no tuvo un costo en el rendimiento. El sistema fue tan bueno como el método anterior para encontrar las tablas y columnas correctas para las preguntas reales del usuario. Los investigadores descubrieron que la única razón por la que el método antiguo a veces fallaba al producir la respuesta correcta era que tenía que trabajar con un conjunto de información mucho más grande y desordenado, mientras que el nuevo método trabajaba con un subconjunto limpio y relevante.

Un descubrimiento clave en su trabajo fue comprender dónde siguen ocurriendo los errores. Incluso con el nuevo sistema de seguridad, la IA ocasionalmente escribía consultas que mencionaban cosas que no debería haber mencionado. Sin embargo, los investigadores rastrearon estos errores y encontraron que no eran causados por la filtración de información del sistema. En cambio, la IA simplemente estaba adivinando o "alucinando" los nombres de las columnas prohibidas, inventándolos de la nada. Esta distinción es vital: demuestra que ocultar la información prohibida de la IA detiene la filtración directa de secretos, pero no detiene a la IA de inventar nombres. Por lo tanto, el nuevo método funciona mejor cuando se combina con una verificación final que valida la consulta antes de que se ejecute, creando dos capas de defensa. Una capa impide que la IA vea los secretos, y la segunda capa impide que la IA use accidentalmente un secreto inventado.

El estudio también analizó cómo el sistema maneja los nombres confusos o abreviados que se encuentran a menudo en las bases de datos empresariales del mundo real, donde "customer risk score" (puntuación de riesgo del cliente) podría escribirse como "cust_rsk_scr". Cuando los nombres eran claros y descriptivos, el nuevo sistema funcionó tan bien como el anterior. Pero cuando los nombres eran cortos y crípticos, el sistema utilizó una técnica especial para añadir descripciones en lenguaje sencillo al mapa seguro. Esto ayudó a la IA a comprender qué significaban los códigos cortos, mejorando su capacidad para encontrar los datos correctos en un 11.5 por ciento en comparación con un sistema sin esas descripciones. Esta mejora solo ocurrió cuando los nombres eran difíciles de adivinar, lo que demuestra que la ayuda adicional solo es necesaria cuando el mapa es difícil de leer.

Para asegurar que el sistema fuera verdaderamente seguro, los investigadores simularon ataques donde un usuario intentaba engañar a la IA para que enumerara todas las tablas secretas. En el sistema antiguo, estos ataques tenían éxito aproximadamente la mitad de las veces, revelando una parte significativa de la estructura oculta de la base de datos. En el nuevo sistema, los ataques fallaron por completo. La IA, al no haber visto nunca las tablas secretas, no pudo enumerarlas. La única información que se filtró fueron palabras comunes que casualmente aparecían en las instrucciones generales del sistema, no los secretos reales de la base de datos. Esto confirmó que el nuevo método bloquea eficazmente la vía que un atacante usaría para mapear una base de datos.

Los investigadores reconocen que su solución es un paso poderoso hacia adelante, pero no es una cura completa para todo. Evita que la IA vea secretos que no debería, pero no puede evitar que un atacante adivine secretos basados en conocimiento público o que infiera datos ocultos a partir de mensajes de error. Por esta razón, el nuevo método está diseñado para trabajar junto con las verificaciones de seguridad existentes, no para reemplazarlas. Al asegurar que la IA nunca vea las partes prohibidas de la base de datos en primer lugar, el sistema elimina una vulnerabilidad importante. Crea un límite donde la IA solo puede trabajar con lo que el usuario tiene permitido ver, haciendo que todo el proceso de convertir preguntas en comandos de base de datos sea mucho más seguro para las organizaciones que necesitan proteger información sensible.

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →