◇ OpenCyber Academy
Ingeniería · Capítulo 9 · Español

Capítulo 9 — Programación II

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.

Capítulo 9 — Programación II

Mapa de la lección

Lección 09 publicada. Mapa, ejemplo, EX025.

flowchart TD
  N0["Resultados de aprendizaje"]
  N1["9.1 Esquema sin cargas útiles"]
  N2["9.2 Inserciones o actualizaciones idempotentes"]
  N3["9.3 Pruebas basadas en propiedades para zonas"]
  N4["Nota práctica"]
  N5["9.1b Evolución del esquema sin tiempo de parada"]
  N6["Síntesis del capítulo"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
  N6 --> EX["Ejemplo resuelto"]
  EX --> Q["Ejercicio EX025"]

Dibujo lógico

flowchart LR
  N0["Resultados de aprendizaje"]
  N1["9.1 Esquema sin cargas útiles"]
  N2["9.2 Inserciones o actualizaciones idempotentes"]
  N3["9.3 Pruebas basadas en propiedades para zonas"]
  N4["Nota práctica"]
  N5["9.1b Evolución del esquema sin tiempo de parada"]
  N6["Síntesis del capítulo"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX025"]
[Resultados de aprendizaje]
    |
    v
[9.1 Esquema sin cargas útiles]
    |
    v
[9.2 Inserciones o actualizaciones idempotentes]
    |
    v
[9.3 Pruebas basadas en propiedades para zonas]
    |
    v
[Nota práctica]
    |
    v
[9.1b Evolución del esquema sin tiempo de parada]
    |
    v
[Síntesis del capítulo]
    |
    v
[Ejemplo resuelto] --> [Ejercicio EX025]

Resultados de aprendizaje

Usted podrá (1) diseñar un esquema para hallazgos de TO que prohíba las recetas de explotación; (2) implementar actualizaciones idempotentes indexadas por activo y debilidad; (3) aplicar pruebas basadas en propiedades a las reglas de zona.

9.1 Esquema sin cargas útiles

Guarde título, activo, zona, clase de debilidad, hash de la evidencia, límite de la consecuencia, capas de protección intactas y estado. Rechace los campos llamados payload, shell o exploit. La evidencia vive en un almacén sellado; el ticket guarda el hash. El esquema de Lena rechaza un registro de plano si aparece un campo prohibido, en lugar de eliminarlo en silencio, para que quien lo envió aprenda a no hacerlo. Los límites de la consecuencia y las capas de protección intactas son campos separados, lo que permite al ingeniero de seguridad funcional filtrar los hallazgos que afectan al SIS-B. El hash de la evidencia vincula cada ticket con su prueba sellada sin copiar nada de ella en el sistema de tickets.

9.2 Inserciones o actualizaciones idempotentes

Dos escáneres que informan de la misma escritura Modbus abierta en el PLC-A deben convertirse en un solo hallazgo. Huella = (activo, clase de debilidad, registro o camino). Los reintentos y las reimportaciones dejan una sola fila. Lena lo prueba importando dos veces la misma salida de un escáner e importando los informes de dos escáneres sobre el mismo problema; ambos casos deben dejar exactamente un hallazgo. La huella usa el registro o el camino, no la redacción propia del escáner, porque dos herramientas describen la misma debilidad de forma distinta. Cuando las huellas coinciden para problemas realmente distintos, una persona los separa y registra por qué.

9.3 Pruebas basadas en propiedades para zonas

Enuncie: «para todo equipo de la zona de oficina y todo registro del SIS, permit es falso». Genere equipos sintéticos y compruébelo. Las pruebas basadas en propiedades detectan el error en el que se añadió una nueva subred de oficina al inventario pero no al lado de denegación de la lista de permitidos.

Caso sintético — Ashford Batch Plant. Tras el hallazgo FW-12, Lena añadió una prueba basada en propiedades: ningún equipo de L4 puede tener un camino de permiso hacia L1-SIS. La integración continua la ejecuta con cada cambio en la exportación del cortafuegos.

La prueba se ejecuta sobre equipos sintéticos tomados del inventario.

9.4 Errores y límites

Los esquemas derivan; póngales versión. Los generadores de propiedades que nunca emiten la nueva subred pasan por alto el error que debían detectar; incluya como entradas las diferencias del inventario. Lena alimenta la prueba basada en propiedades con la última diferencia del inventario, de modo que cada subred nueva se prueba en la siguiente ejecución. El esquema tiene un campo de versión, y los registros antiguos se migran con un script registrado en lugar de editarse a mano. Cuando se modifica una prueba, comprueba que siga fallando con el error original, ya que una propiedad que ya no puede fallar no protege nada.

Nota práctica

Cuando alguien pida un equipo de excepción «solo por esta vez», exija en el esquema un objeto de excepción con duración limitada, fecha de caducidad y responsable. Las excepciones sin caducidad se convierten en conductos permanentes.

9.1b Evolución del esquema sin tiempo de parada

Cuando el esquema de hallazgos del CNHP incorpora un campo obligatorio, como el número del permiso de trabajo, despliegue un cambio en dos fases: primero acepte y persista el campo como opcional mientras rellena los registros existentes; después cambie el validador a obligatorio. Las operaciones a medio camino no deben romperse porque un cliente móvil vaya una versión por detrás. Publique la versión del esquema en las respuestas de la API para que las tabletas de campo y el exportador del monitor puedan negarse a escribir cuando sean incompatibles. Las importaciones masivas desde escáneres deben pasar por la misma ruta de validación que las creaciones interactivas, incluidas las comprobaciones de campos prohibidos, o las cargas útiles se colarán por la puerta lateral de confianza de la importación.

Ejercicios — capítulo 9

Síntesis del capítulo

Los esquemas, la idempotencia y las propiedades mantienen aburridas las herramientas de seguridad de TO, en el buen sentido.

Siga estudiando — capítulo 09 de 50

← Capítulo 08 (borrador) · Índice de capítulos del curso · Capítulo 10 (borrador) →