Capítulo 2 — Seguridad de la IA y del aprendizaje automático: la frontera de la investigación
Mapa de la lección
Lección 02 publicada. Mapa, ejemplo, EX008.
flowchart TD
N0["Resultados de aprendizaje"]
N1["2.1 Cuatro familias clásicas de ataques"]
N2["2.2 Sistemas generativos y agénticos"]
N3["2.3 La gobernanza como contexto de la investigación"]
N4["2.4 Encontrar problemas abiertos"]
N5["2.6 Actividades de práctica"]
N6["Síntesis del capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
N6 --> EX["Ejemplo resuelto"]
EX --> Q["Ejercicio EX008"]
Dibujo lógico
flowchart LR
N0["Resultados de aprendizaje"]
N1["2.1 Cuatro familias clásicas de ataques"]
N2["2.2 Sistemas generativos y agénticos"]
N3["2.3 La gobernanza como contexto de la investigación"]
N4["2.4 Encontrar problemas abiertos"]
N5["2.6 Actividades de práctica"]
N6["Síntesis del capítulo"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX008"]
[Resultados de aprendizaje]
|
v
[2.1 Cuatro familias clásicas de ataques]
|
v
[2.2 Sistemas generativos y agénticos]
|
v
[2.3 La gobernanza como contexto de la investigación]
|
v
[2.4 Encontrar problemas abiertos]
|
v
[2.6 Actividades de práctica]
|
v
[Síntesis del capítulo]
|
v
[Ejemplo resuelto] --> [Ejercicio EX008]
Resultados de aprendizaje
Usted podrá (1) cartografiar la superficie de ataque de la IA predictiva y generativa con la taxonomía NIST AI 100-2 E2025, MITRE ATLAS y el OWASP Top 10 for LLM Applications 2025; (2) resumir los resultados fundacionales sobre evasión, envenenamiento, privacidad y extracción; (3) explicar por qué la inyección de instrucciones (prompt injection) es un problema de arquitectura y no de filtrado; (4) localizar problemas abiertos en los que una contribución doctoral es plausible; y (5) relacionar la investigación con los marcos de gobernanza (NIST AI RMF, ISO/IEC 42001, el Reglamento de IA de la UE).
2.1 Cuatro familias clásicas de ataques
La evasión modifica una entrada en el momento de la prueba para que el modelo se equivoque. Szegedy et al. (arXiv:1312.6199) descubrieron que perturbaciones imperceptibles engañan a los clasificadores de imágenes; Goodfellow, Shlens y Szegedy (arXiv:1412.6572) lo explicaron por la linealidad local e introdujeron el método del signo del gradiente rápido (FGSM). Carlini y Wagner (arXiv:1608.04644) propusieron ataques de optimización más fuertes; Madry et al. (arXiv:1706.06083) plantearon la robustez como un problema min–max y popularizaron el entrenamiento adversarial con descenso de gradiente proyectado. Cohen, Rosenfeld y Kolter (arXiv:1902.02918) ofrecieron robustez certificada mediante suavizado aleatorio, a costa de exactitud y con garantías solo para perturbaciones pequeñas acotadas en norma.
El envenenamiento corrompe los datos de entrenamiento o el proceso de entrenamiento. Biggio, Nelson y Laskov (arXiv:1206.6389) envenenaron máquinas de vectores de soporte; Gu et al., con BadNets (arXiv:1708.06733), y Chen et al. (arXiv:1712.05526) mostraron puertas traseras que mantienen la exactitud con datos limpios mientras un disparador fuerza una salida objetivo. Carlini et al. (arXiv:2302.10149) mostraron que envenenar conjuntos de datos a escala web es factible, por ejemplo comprando dominios caducados que figuran en las listas de URL de los conjuntos de datos. Hubinger et al., con Sleeper Agents (arXiv:2401.05566), entrenaron modelos de lenguaje con un comportamiento de puerta trasera que persistió tras el ajuste fino de seguridad estándar.
Los ataques a la privacidad infieren información sobre los datos de entrenamiento. Shokri et al. (arXiv:1610.05820) introdujeron la inferencia de pertenencia; Carlini et al. (arXiv:2012.07805) extrajeron secuencias de entrenamiento literales de un modelo de lenguaje grande. El entrenamiento con privacidad diferencial (Abadi et al., arXiv:1607.00133) acota formalmente esa fuga, a costa de utilidad.
La extracción copia la funcionalidad de un modelo a través de su API. Tramèr et al. (arXiv:1609.02943) robaron modelos desde API de predicción, a veces con un número de consultas cercano al número de parámetros en los modelos sencillos.
El laboratorio de juguete siguiente reproduce la intuición de la evasión con un modelo lineal: la exactitud cae de forma continua a medida que crece el presupuesto de perturbación, aunque el modelo sea exacto con datos limpios.
"""Lab E: evasion of a toy linear classifier (synthetic data, stdlib only).
Trains logistic regression on two synthetic clusters, then applies a
fast-gradient-sign (FGSM-style) perturbation of size eps to every test point
and reports clean vs adversarial accuracy. Teaching model only."""
import math, random
rng = random.Random(7)
def point(label):
cx = 1.0 if label else -1.0
return [rng.gauss(cx, 0.7), rng.gauss(cx, 0.7)], label
train = [point(i % 2) for i in range(400)]
test = [point(i % 2) for i in range(200)]
w, b = [0.0, 0.0], 0.0
sig = lambda z: 1 / (1 + math.exp(-z))
for epoch in range(200):
gw, gb = [0.0, 0.0], 0.0
for x, y in train:
p = sig(w[0]*x[0] + w[1]*x[1] + b)
gw[0] += (p - y)*x[0]; gw[1] += (p - y)*x[1]; gb += p - y
w = [w[i] - 0.1*gw[i]/len(train) for i in range(2)]; b -= 0.1*gb/len(train)
def acc(data, eps):
ok = 0
for x, y in data:
# gradient of the loss w.r.t. x is (p - y) * w; FGSM steps along its sign
p = sig(w[0]*x[0] + w[1]*x[1] + b)
xa = [x[i] + eps*math.copysign(1, (p - y)*w[i]) for i in range(2)]
ok += (sig(w[0]*xa[0] + w[1]*xa[1] + b) >= 0.5) == bool(y)
return ok / len(data)
print(f"weights w=({w[0]:.3f}, {w[1]:.3f}) b={b:.3f}")
for eps in (0.0, 0.25, 0.5, 0.75, 1.0):
print(f"eps={eps:.2f} accuracy={acc(test, eps):.3f}")
Salida esperada:
weights w=(1.795, 1.756) b=-0.080
eps=0.00 accuracy=0.985
eps=0.25 accuracy=0.950
eps=0.50 accuracy=0.840
eps=0.75 accuracy=0.660
eps=1.00 accuracy=0.505
2.2 Sistemas generativos y agénticos
Los modelos de lenguaje grandes (LLM) añaden superficies nuevas. Los jailbreaks obtienen contenido que el entrenamiento de seguridad debía impedir; Wei, Haghtalab y Steinhardt (arXiv:2307.02483) los atribuyeron a objetivos en competencia y a una generalización desajustada, y Zou et al. (arXiv:2307.15043) encontraron sufijos optimizados automáticamente que se transfieren entre modelos. La inyección de instrucciones es distinta: un atacante coloca instrucciones en el contenido que la aplicación entrega al modelo. Perez y Ribeiro (arXiv:2211.09527) estudiaron el secuestro directo del objetivo; Greshake et al. (arXiv:2302.12173) mostraron la inyección indirecta a través de páginas web, correos electrónicos y documentos que recupera una aplicación integrada con un LLM, con resultado de exfiltración de datos y uso indebido de herramientas; Liu et al. (arXiv:2306.05499) atacaron aplicaciones reales integradas con LLM. El OWASP Top 10 for LLM Applications 2025 sitúa la inyección de instrucciones como LLM01 y añade la divulgación de información sensible, la cadena de suministro, el envenenamiento de datos y de modelos, el manejo inadecuado de las salidas, la agencia excesiva, la filtración de las instrucciones del sistema, las debilidades de vectores y embeddings, la desinformación y el consumo sin límites.
La inyección es un problema de arquitectura porque un LLM recibe instrucciones y datos en un único flujo de tokens; no hay entre ellos una frontera comparable a la del hardware. Por eso las defensas combinan estructura (Chen et al., StruQ, arXiv:2402.06363, entrena a los modelos para seguir solo las instrucciones de un canal reservado), reducción de privilegios (herramientas con mínimo privilegio, listas de permitidos, confirmación humana para las acciones con consecuencias) y detección. NIST AI 600-1 enumera la seguridad de la información y otros riesgos relacionados de la IA generativa, con acciones sugeridas; MITRE ATLAS cataloga tácticas y técnicas de adversarios contra sistemas de IA, con estudios de caso, al estilo de ATT&CK.
2.3 La gobernanza como contexto de la investigación
El NIST AI RMF 1.0 (AI 100-1) organiza el trabajo sobre el riesgo en las funciones Govern, Map, Measure y Manage y enumera las características de una IA digna de confianza, entre ellas la de ser segura y resiliente. ISO/IEC 42001:2023 especifica un sistema de gestión de la IA. El Reglamento (UE) 2024/1689 (el Reglamento de IA) entró en vigor el 1 de agosto de 2024 con una aplicación escalonada; su artículo 15 exige que los sistemas de alto riesgo alcancen un nivel adecuado de precisión, solidez y ciberseguridad, y nombra el envenenamiento de datos, el envenenamiento de modelos, los ejemplos adversariales y los ataques a la confidencialidad. Una contribución doctoral que ofrezca un método de medición de esas propiedades puede, por tanto, importar más allá del mundo académico; pero no debe exagerar las conclusiones jurídicas.
2.4 Encontrar problemas abiertos
Las buenas preguntas de frontera se sitúan donde (a) los ataques son baratos y las defensas se evalúan con poco rigor, (b) la teoría y la práctica discrepan, o (c) un patrón de despliegue ha ido por delante de la evaluación. Ejemplos actuales son evaluar las defensas de los agentes frente a atacantes adaptativos; medir el riesgo residual cuando no existe una cota certificada; la integridad de la cadena de suministro de pesos de modelos y conjuntos de datos; y la auditoría de privacidad de modelos ajustados. Escriba cada uno como una declaración de laguna: qué se sabe, qué se afirma pero no se ha probado, por qué importa, qué evidencia lo zanjaría. La laguna de Ana en el ejemplo resuelto muestra la forma.
2.5 Ejemplo resuelto (caso sintético del MAAL)
Ana cartografió 31 artículos sobre defensas contra la inyección de instrucciones en una tabla con estas columnas: modelo de amenazas, ataque adaptativo (sí/no), métrica, coste de utilidad comunicado y código publicado. Dieciocho artículos evaluaban solo listas fijas de cargas útiles; nueve no comunicaban ningún coste de utilidad; seis publicaban código. Su declaración de laguna: se afirma que las defensas estructurales generalizan, pero pocas evaluaciones usan atacantes que se adapten a la propia estructura, y los costes de utilidad rara vez se miden sobre las mismas tareas. Esa laguna es lo bastante estrecha para probarse y lo bastante amplia para importar.
2.6 Actividades de práctica
- Construya su propia tabla de cartografía con veinte artículos de su subárea. 2. Clasifique tres estudios de caso de MITRE ATLAS según el objetivo y la capacidad del atacante de NIST AI 100-2. 3. Reescriba un problema abierto como una declaración de laguna en cuatro partes. Para la tabla de cartografía, use las mismas columnas que Ana: modelo de amenazas, ataque adaptativo, métrica, coste de utilidad y publicación del código, y haga el recuento de cada columna al final. Para los estudios de caso de ATLAS, anote dónde un caso no encaja limpiamente en las categorías del NIST; ese desajuste es útil en sí mismo. Para la declaración de laguna, compruebe que la parte de la evidencia nombra un experimento que podría realizar de verdad dentro del doctorado.
2.7 Errores y límites
Cada una de estas confusiones conduce al estudio equivocado; compruebe cada una en su capítulo de trabajos relacionados:
- Equiparar el jailbreak (evasión de la política) con la inyección de instrucciones (introducción clandestina de instrucciones a través de los datos); una defensa contra jailbreaks no aborda los datos que introducen instrucciones de forma clandestina, que es el problema de Ana.
- Citar una categoría de un marco como si fuera un hallazgo empírico; una categoría registra que un riesgo existe, no con qué frecuencia ocurre.
- Tratar las cotas de robustez certificada como si cubrieran amenazas fuera de su bola de norma; una cota certificada no dice nada sobre el texto inyectado ni sobre las perturbaciones fuera de su norma.
- Leer sin cuidado las fechas de aplicación del Reglamento de IA de la UE; las obligaciones entran en vigor de forma escalonada entre 2025 y 2027, y una lectura descuidada lleva a afirmaciones erróneas sobre qué obligaciones se aplican ya.
Ejercicios — capítulo 2
- EX008 — Taxonomía. Clasifique una puerta trasera insertada a través de un conjunto de datos de ajuste fino de terceros según el objetivo, la capacidad y la etapa del ciclo de vida del atacante (NIST AI 100-2). Rúbrica: 3 = integridad, control de los datos de entrenamiento, etapa de entrenamiento; 2 = dos correctos; 1 = uno; 0 = ninguno.
- EX009 — Lectura del laboratorio. En el laboratorio de evasión, ¿con qué presupuesto cae la exactitud por debajo de 0,70, y por qué un modelo lineal se degrada de forma continua? Rúbrica: 3 = eps 0,75 (0,660) más la explicación por margen o linealidad; 2 = solo el número; 1 = vago; 0 = incorrecto.
- EX010 — Inyección frente a jailbreak. Distinga ambos con un ejemplo sintético de cada uno. Rúbrica: 3 = distinción y ejemplos correctos; 2 = solo la distinción; 1 = confuso; 0 = incorrecto.
- EX011 — Correspondencia con OWASP. Haga corresponder un agente de correo que reenvía mensajes siguiendo una instrucción recuperada con dos entradas de OWASP LLM 2025. Rúbrica: 3 = LLM01 y LLM06 con razones; 2 = identificadores correctos sin razones; 1 = uno; 0 = ninguno.
- EX012 — Declaración de laguna. Escriba una declaración de laguna en cuatro partes sobre la inferencia de pertenencia contra LLM ajustados. Rúbrica: 3 = las cuatro partes y evidencia comprobable; 2 = tres; 1 = vago; 0 = ninguna.
- EX013 — Cotas certificadas. Indique una cosa que certifica el suavizado aleatorio y una que no. Rúbrica: 3 = radio de una bola L2 alrededor de una entrada frente a parches, cambios semánticos, otras normas o envenenamiento; 2 = un solo lado; 1 = vago; 0 = incorrecto.
- EX014 — Regulación. ¿Qué artículo del Reglamento de IA trata la solidez y la ciberseguridad de los sistemas de alto riesgo, y qué ataques nombra? Rúbrica: 3 = artículo 15 con envenenamiento, ejemplos adversariales y ataques a la confidencialidad; 2 = solo el artículo; 1 = vago; 0 = incorrecto.
Síntesis del capítulo
La frontera está marcada por una década de ataques que avanzan más deprisa que las defensas. Los sistemas generativos y agénticos la amplían, porque las instrucciones y los datos comparten un canal. Una buena pregunta doctoral se apoya en una laguna medida y usa vocabularios compartidos para que otros puedan ponerla a prueba.
Siga estudiando — capítulo 02 de 08
← Capítulo 01 (borrador) · Índice de capítulos del curso · Capítulo 03 (borrador) →