OpenCyber Academy
Tecnólogo · Capítulo 1 · Español
Código del curso: OCA-089Capítulo 01: OCA-089-C001

Capítulo 1 — Sistemas informáticos

Aprendizaje gratuito y abierto para quienes desean proteger a las personas y la tecnología. No se necesita una cuenta para estudiar ni consultar las respuestas.

Mapa de la lección

Lección 01 publicada. Mapa, ejemplo, EX001.

flowchart TD
  N0["Resultados de aprendizaje"]
  N1["1.1 Capas"]
  N2["1.2 Dónde residen los modelos"]
  N3["1.3 Recursos"]
  N4["1.4 Capas y controles"]
  N5["Síntesis"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5
  N5 --> EX["Ejemplo resuelto"]
  EX --> Q["Ejercicio EX001"]

Dibujo lógico

flowchart LR
  N0["Resultados de aprendizaje"]
  N1["1.1 Capas"]
  N2["1.2 Dónde residen los modelos"]
  N3["1.3 Recursos"]
  N4["1.4 Capas y controles"]
  N5["Síntesis"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX001"]
[Resultados de aprendizaje]
    |
    v
[1.1 Capas]
    |
    v
[1.2 Dónde residen los modelos]
    |
    v
[1.3 Recursos]
    |
    v
[1.4 Capas y controles]
    |
    v
[Síntesis]
    |
    v
[Ejemplo resuelto] --> [Ejercicio EX001]

Resultados de aprendizaje

Usted podrá (1) describir las capas de hardware y software sobre las que funciona un servicio de IA; (2) explicar dónde residen los modelos, los pesos y los datos en tiempo de ejecución; (3) identificar los recursos informáticos que un atacante puede agotar; y (4) relacionar las capas del sistema con los controles de seguridad de la IA.

1.1 Capas

Un asistente de tienda como Ask Brightwell no es «solo un modelo». Una petición atraviesa un navegador, un balanceador de carga, una aplicación web, un servicio de orquestación que construye el prompt, un servicio de recuperación, un servidor de modelos (a menudo la API de un proveedor) y servicios de herramientas como la base de datos de pedidos. Cada capa funciona sobre un sistema operativo, en hardware físico o virtual, y cada una tiene sus propias cuentas, registros y modos de fallo. El trabajo de seguridad empieza por dibujar estas capas. El primer dibujo que Jonas hizo de Ask Brightwell encontró un problema en una capa que nadie consideraba de IA: los registros del orquestador.

1.2 Dónde residen los modelos

Un modelo es un archivo de números (pesos) más el código que lo ejecuta. Cuando está autoalojado, los pesos están en disco, se cargan en memoria y suelen ejecutarse en GPU. Cuando se accede a él mediante una API, el proveedor los guarda y usted envía texto. En ambos casos, el prompt, los documentos recuperados y las salidas pasan por la memoria y los registros de sistemas que usted opera, lugares por donde pueden filtrarse datos sensibles. En Ask Brightwell los pesos permanecen en el proveedor, pero los prompts que construía el orquestador, incluidas las direcciones de clientes obtenidas por la herramienta de pedidos, estaban en un contenedor de registros compartido. Los archivos del modelo autoalojado de CodePilot, en cambio, residen en los discos de la propia Brightwell, donde las comprobaciones de integridad son tarea de Brightwell.

1.3 Recursos

La inferencia de los modelos de lenguaje es cara: cada petición consume tiempo y memoria de GPU en proporción a la longitud de la entrada y de la salida. Los atacantes que envían peticiones muy largas o muy numerosas pueden elevar los costes o denegar el servicio; OWASP lo recoge como LLM10 Unbounded Consumption (consumo ilimitado). Saber qué recurso es escaso —GPU, tokens, dinero— indica qué hay que limitar. En Ask Brightwell, el recurso escaso es el dinero: cada token enviado a la API del proveedor se factura, de modo que un punto de acceso sin límites permite que cualquiera dispare la factura. Por eso la primera propuesta de Jonas combinaba un límite de tasa de peticiones con un presupuesto diario de tokens por cuenta.

1.4 Capas y controles

Asigne los controles a las capas: autenticación en el perímetro, límites de tasa en la pasarela, construcción del prompt y tratamiento de las salidas en el orquestador, control de acceso en la recuperación y en las herramientas, comprobaciones de integridad de los archivos del modelo en disco y registros en todas partes. Para Ask Brightwell, el diagrama de Jonas muestra dónde está hoy cada control y dónde falta alguno. No había límite de tasa en la pasarela y los registros de prompts del orquestador podían leerlos 40 ingenieros, así que a dos capas les faltaban controles que el mapa hace evidentes. El servicio de políticas añadido más tarde pertenece a esa misma capa del orquestador, entre el modelo y las herramientas.

1.5 Ejemplo resuelto (caso sintético de Brightwell)

Jonas dibuja Ask Brightwell: navegador → CDN → aplicación web → orquestador → (índice de recuperación de 3000 páginas de políticas y productos; API del modelo del proveedor; herramientas de consulta de pedidos y de devoluciones) → bases de datos. Anota que el orquestador registra los prompts completos, incluidas las direcciones de clientes obtenidas por la herramienta de pedidos, en un contenedor de registros compartido que pueden leer 40 ingenieros. Lo añade a la lista de incidencias del equipo. El hallazgo no tiene nada que ver con el modelo: es un problema corriente de control de acceso en la capa de registro. Como los registros contienen direcciones que obtuvo la herramienta de pedidos, el contenedor se convirtió en uno de los mayores almacenes de datos de clientes del sistema sin que nadie lo decidiera.

1.6 Errores y límites

  • Tratar el modelo como si fuera todo el sistema.
  • Olvidar que los registros y las cachés son almacenes de datos.
  • Ignorar el coste como objetivo de ataque.

El dibujo de Jonas protege contra los tres. Muestra el modelo como una caja entre muchas, incluye el contenedor de registros compartido como almacén de datos con direcciones de clientes y marca la API del proveedor como un coste que hay que proteger. Cada error, si no se hubiera corregido, habría dejado fuera de la lista de incidencias una debilidad real de Ask Brightwell. Los capítulos posteriores vuelven a cada capa con pruebas y controles.

Ejercicios

  • EX001 — Diagrama de capas. Dibuje las capas de un chatbot de IA que use y etiquete un control por capa. Rúbrica: 3 = al menos seis capas con controles adecuados; 2 = cuatro o cinco; 1 = dos o tres; 0 = ninguna.
  • EX002 — Dónde residen los datos. Enumere cuatro lugares donde podría almacenarse una dirección de cliente durante una petición a Ask Brightwell. Rúbrica: 3 = cuatro lugares plausibles; 2 = tres; 1 = uno o dos; 0 = ninguno.
  • EX003 — Recurso escaso. En un modelo autoalojado, ¿qué recurso limitaría primero y cómo? Rúbrica: 3 = tiempo de GPU o tokens, límites por usuario y longitudes máximas; 2 = parcial; 1 = vago; 0 = ninguno.

Síntesis

Los servicios de IA son sistemas por capas. La seguridad empieza por cartografiar por dónde viajan las peticiones, los modelos y los datos, y qué recursos pueden agotar los atacantes.

Siga estudiando — capítulo 01 de 30

← Página del curso · Índice de capítulos del curso · Capítulo 02 (borrador) →

Respuestas desarrolladas

EX001. Navegador (política de seguridad de contenidos); CDN/perímetro (TLS, protección contra DDoS); aplicación web (autenticación); orquestador (construcción del prompt, codificación de las salidas); recuperación (filtrado por permisos); API del modelo (clave en un gestor de secretos, cuotas); herramientas (comprobaciones de titularidad); bases de datos (cuentas de mínimo privilegio, cifrado).

EX002. En la base de datos de pedidos; en la respuesta de la herramienta guardada en la memoria del orquestador; en el prompt enviado a la API del proveedor y, posiblemente, en los registros del proveedor; en los registros de prompts del orquestador; en una caché de respuestas.

EX003. El tiempo de GPU, que en la práctica significa tokens. Limite el máximo de tokens de entrada y de salida por petición y fije presupuestos de peticiones y de tokens por usuario con colas, para que ningún usuario pueda monopolizar la GPU.