¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Aprender de un incidente y medirlo

Después de esta lección: Puedo aprender de un incidente y medir cómo respondí.

Lección de 55 min3 comandosLaboratorio de respuesta a incidentes y forense: investiga un servidor comprometido

Si no mides, no sabes si mejoras

Una revisión posterior es una reunión, sin buscar culpables, en la que el equipo cuenta qué pasó y qué va a cambiar. Medir cuánto tardaste en detectar y en recuperar te dice si mejoras de un incidente al siguiente.

Una asesoría de quince personas recupera su correo tras un ataque. Un mes después ocurre algo parecido. Si no anotó cuánto tardó la primera vez, no puede saber si ahora lo hace mejor.

Al final de esta lección

Nota

Puedo aprender de un incidente y medir cómo respondí.

Palabras clave

PalabraQué significa
Revisión posterioruna reunión tras el incidente para repasar qué pasó y qué cambiar
Causa raízel fallo de fondo que hizo posible el incidente
Cultura sin culpablespreguntar qué falló en el sistema y no quién se equivocó
Acción de mejoraun cambio concreto, con una persona y una fecha
Tiempo de deteccióndesde que empieza el incidente hasta que el equipo lo detecta
Tiempo de recuperacióndesde que se detecta hasta que el servicio vuelve a funcionar

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Qué se hace en una revisión posterior

Se hace pocos días después, cuando todos recuerdan. Se repasa la cronología: qué funcionó, qué falló y por qué.

Se busca la causa raíz, el fallo de fondo y no el que se vio primero. Se pregunta qué falló en el sistema, no quién se equivocó. Si alguien teme un castigo, deja de contar lo que ocurrió.

Ejemplo: de lo aprendido a un cambio

HallazgoCausa raízAcción de mejoraQuiénCuándo
Tardamos 30 minutos en verloNadie miraba los avisos de accesoUna regla que avise a dos personasAnaEsta semana
Las copias estaban en el mismo equipoNo había una copia aparteUna copia semanal en un disco desconectadoLuisEn un mes

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Tiempo de detección y tiempo de recuperación

El tiempo de detección va desde que empieza el incidente hasta que el equipo lo detecta. El tiempo de recuperación va desde la detección hasta que el servicio vuelve a funcionar.

Mide desde el principio real del incidente y no desde que lo notaste. Si no, el tiempo de detección saldría siempre en cero.

Ejemplo: las horas de la asesoría

HechoDía y horaCuenta
Empieza el incidente03 02:10Punto de partida
Se detecta03 02:40Detección: 30 minutos
Se contiene03 03:0525 minutos tras la detección
Se recupera el correo03 05:30Recuperación: 170 minutos

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Calcular tiempos desde la terminal

El shell calcula con $(( )). De las 02:40 a las 05:30 hay 5 por 60 más 30, menos 2 por 60 más 40. El primer comando lo hace. El segundo saca la media de tres tiempos.

El tercero abre una prueba del laboratorio, pero solo para ver su cabecera. El archivo mtimes.txt trae fecha y hora en cada línea, listas para ordenar una cronología.

Los minutos entre dos horas

Comando
echo $((5*60+30 - (2*60+40)))

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

La media de tres tiempos

Comando
printf '30\n45\n15\n' | awk '{s+=$1} END {print s/NR}'

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

La cabecera del archivo de fechas del laboratorio

Comando
head -n 1 case/mtimes.txt

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

La media resume, pero también esconde

Con tres incidentes de 5, 5 y 200 minutos, la media es 70. Ninguno duró 70.

Mira también el más largo. Y compara siempre incidentes parecidos: un fallo de correo y un robo de datos no se miden igual.

Pasar una hora a minutos con Python

Restar horas escritas como texto es difícil. Primero conviértelas a minutos desde el día cero. Luego restar es fácil.

Ejecuta el ejemplo. Cambia las dos horas por las de tu propio incidente inventado.

Convertir una hora en minutos

Código: python
def to_minutes(stamp):
    # El formato es "día hora:minutos", por ejemplo "03 05:30".
    parts = stamp.split()
    day = int(parts[0])
    clock = parts[1].split(":")
    return day * 1440 + int(clock[0]) * 60 + int(clock[1])


print(to_minutes("03 05:30") - to_minutes("03 02:40"))

Un error frecuente

Advertencia

Mucha gente mide el tiempo de detección desde que se dio cuenta. Así siempre sale cero y no aprendes nada. Mídelo desde que empezó el incidente, aunque esa hora haya que buscarla después en los registros.

Para ir más lejos

Elige un incidente real que hayas leído en la prensa. Escribe qué causa raíz crees que tuvo y tres acciones de mejora, cada una con una persona y una fecha. Después di qué dato te falta para saber si funcionaron.

Sobre este laboratorio y su código: Laboratorio de respuesta a incidentes y forense: investiga un servidor comprometido

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.