Mapa de la lección
Lección 11 publicada. Mapa, ejemplo, EX031.
flowchart TD
N0["Resultados de aprendizaje"]
N1["11.1 Procesos y permisos"]
N2["11.2 Aislamiento"]
N3["11.3 Control de recursos"]
N4["11.4 Registros"]
N5["11.4b Parcheo y configuración"]
N6["Síntesis"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
N6 --> EX["Ejemplo resuelto"]
EX --> Q["Ejercicio EX031"]
Dibujo lógico
flowchart LR
N0["Resultados de aprendizaje"]
N1["11.1 Procesos y permisos"]
N2["11.2 Aislamiento"]
N3["11.3 Control de recursos"]
N4["11.4 Registros"]
N5["11.4b Parcheo y configuración"]
N6["Síntesis"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX031"]
[Resultados de aprendizaje]
|
v
[11.1 Procesos y permisos]
|
v
[11.2 Aislamiento]
|
v
[11.3 Control de recursos]
|
v
[11.4 Registros]
|
v
[11.4b Parcheo y configuración]
|
v
[Síntesis]
|
v
[Ejemplo resuelto] --> [Ejercicio EX031]
Resultados de aprendizaje
Usted podrá (1) explicar los procesos, los usuarios, los permisos de archivo y el aislamiento; (2) ejecutar servicios de IA con mínimo privilegio; (3) aislar en entornos controlados el código producido o activado por la IA; y (4) usar los registros del sistema en las investigaciones.
11.1 Procesos y permisos
Todo programa se ejecuta como un proceso perteneciente a una cuenta de usuario. El sistema operativo comprueba los permisos de esa cuenta antes de permitir el acceso a archivos, las conexiones de red o el uso de dispositivos. Un servidor de modelos debe ejecutarse con su propia cuenta sin privilegios, que pueda leer los archivos del modelo pero no modificar código, leer datos ajenos a su función ni administrar la máquina. Si un atacante encontrara un fallo en el servidor de modelos, solo obtendría los derechos de esa cuenta. Por eso el trabajador de OCR de DocSort que se ejecutaba como administrador, en el ejemplo resuelto, fue un hallazgo grave incluso antes de que nada saliera mal.
11.2 Aislamiento
Los contenedores y las máquinas virtuales aíslan las cargas de trabajo. El aislamiento es esencial cuando un sistema de IA puede ejecutar código (por ejemplo, una herramienta de análisis de datos en un chatbot): el código puede verse influido por la inyección de instrucciones, así que debe ejecutarse sin acceso a la red, con CPU y memoria limitadas, un límite de tiempo corto y un sistema de archivos temporal. Ask Lumen no ejecuta código, pero DocSort procesa escaneos subidos, que son archivos no confiables. Ejecutar su trabajador de OCR en un contenedor con acceso de solo lectura a la carpeta de entrada significa que un archivo malicioso solo puede afectar a ese contenedor. Cada restricción responde a un riesgo concreto: sin red, los datos no pueden salir; el límite de tiempo detiene los bucles sin fin; y el sistema de archivos temporal desaparece tras cada trabajo.
11.3 Control de recursos
Sin límites, una petición pesada puede dejar sin recursos a las demás. Los grupos de control (en Linux) y los límites de los contenedores acotan el uso de CPU, memoria y GPU por carga de trabajo, lo que favorece la disponibilidad. En DocSort, un solo escaneo mal formado que consuma toda la memoria podría bloquear todas las cartas de derivación de la cola. Un tope de memoria en el contenedor del trabajador hace que ese archivo falle por sí solo mientras el siguiente trabajo continúa. Los límites se fijan a partir del uso normal medido más un margen, y un trabajo que alcanza un límite se registra para poder investigar la causa en lugar de reintentarlo en silencio.
11.4 Registros
Los registros de autenticación, de procesos y de acceso a archivos ayudan a reconstruir lo ocurrido. Correlacionarlos con los identificadores de petición de la aplicación vincula una conversación del chatbot con sus efectos en el sistema. En Ask Lumen, cada conversación recibe un identificador de petición que aparece en el registro de la aplicación, en el registro de llamadas al modelo y en el registro de la herramienta de reservas. Con ese identificador, Rina puede seguir un mensaje de un paciente desde el chat hasta cualquier cita que haya modificado. Sin él, emparejar entradas solo por la hora es lento y propenso a errores cuando hay muchas conversaciones a la vez.
11.4b Parcheo y configuración
Los sistemas operativos y el software que sirve modelos de IA reciben actualizaciones de seguridad; aplíquelas según un calendario y controle las versiones. Las configuraciones predeterminadas suelen activar funciones de depuración, páginas de error detalladas y cuentas de ejemplo que deben desactivarse en producción. Los volcados de memoria de DocSort en el ejemplo resuelto son un caso de ese tipo de valor predeterminado: útil durante el desarrollo, dañino en producción. LCH mantiene ahora una lista de comprobación de configuración para cada servicio de IA, revisada antes de cada publicación, que enumera los ajustes de depuración, las páginas de error y las cuentas de ejemplo que deben estar desactivados. El parcheo sigue un calendario mensual, y las correcciones urgentes se aplican antes cuando se anuncia una vulnerabilidad grave.
11.5 Ejemplo resuelto (caso sintético de LCH)
El trabajador de OCR de DocSort se ejecutaba con una cuenta de administrador «por comodidad». Un archivo escaneado mal formado lo hizo fallar, y el volcado de memoria se escribió en una carpeta compartida que todo el personal podía leer, lo que expuso el texto de las cartas. La corrección de Rina: una cuenta dedicada sin privilegios, volcados de memoria desactivados en producción, el trabajador en un contenedor con acceso de solo lectura a su carpeta de entrada y alertas ante los fallos. Cada corrección responde a una causa: la cuenta sin privilegios limita lo que puede hacer un trabajador comprometido, los volcados desactivados impiden que el texto llegue a una carpeta compartida, la entrada de solo lectura impide que el trabajador altere las cartas y las alertas hacen visibles los fallos.
11.6 Errores y límites
- Servicios que se ejecutan como administrador.
- Herramientas de IA que ejecutan código con acceso a la red.
- Registros que no se pueden vincular con las peticiones.
Ejecutar como administrador convierte cualquier error en control total de la máquina, como casi ocurrió en el caso de DocSort. Las herramientas de IA que ejecutan código con acceso a la red pueden ser dirigidas mediante inyección de instrucciones para enviar datos al exterior. Los registros que no se pueden vincular con las peticiones impiden decir qué conversación causó qué efecto, así que las investigaciones se estancan. Cada uno de estos es una decisión de configuración, barata de acertar desde el principio.
Ejercicios
- EX031 — Mínimo privilegio. Enumere tres permisos que necesita el trabajador de DocSort y tres que no debería tener. Rúbrica: 3 = ambos lados razonables; 2 = un lado débil; 1 = vago; 0 = nada.
- EX032 — Entorno aislado. Especifique un entorno aislado para la herramienta «analizar hoja de cálculo» de un chatbot. Rúbrica: 3 = sin red, límites de CPU/memoria/tiempo, sistema de archivos temporal, usuario sin privilegios; 2 = tres; 1 = uno o dos; 0 = nada.
- EX033 — Volcado de memoria. ¿Por qué el volcado de memoria era un problema de confidencialidad? Rúbrica: 3 = contenía texto sensible escrito en una ubicación de lectura amplia; 2 = parcial; 1 = vago; 0 = incorrecto.
Síntesis
El sistema operativo impone quién puede hacer qué. El mínimo privilegio, el aislamiento, los límites de recursos y los registros vinculables hacen más seguros los servicios de IA cuando algo sale mal.
Siga estudiando — capítulo 11 de 40
← Capítulo 10 (borrador) · Índice de capítulos del curso · Capítulo 12 (borrador) →