🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónIntegridad que resiste a un atacante
4 tareas · 20 min · Principiante
La sala anterior separó tres propiedades; esta mira de cerca la que más se da por hecha: la integridad. No es una sola cosa. Detectar que un dato se corrompió por accidente y detectar que alguien lo cambió a propósito son dos listones muy distintos, y la herramienta que basta para el primero no sirve para el segundo. En CifraLab varios servicios dicen «aquí va el dato con su hash, así nadie lo cambia». Tu trabajo es preguntar contra quién: contra un cable con ruido, o contra alguien que quiere engañar al que recibe. De esa pregunta sale si hace falta un hash a secas, un código de autenticación con clave, o una firma.
Objetivo de la sala
La sala anterior separó tres propiedades; esta mira de cerca la que más se da por hecha: la integridad. No es una sola cosa. Detectar que un dato se corrompió por accidente y detectar que alguien lo cambió a propósito son dos listones muy distintos, y la herramienta que basta para el primero no sirve para el segundo. En CifraLab varios servicios dicen «aquí va el dato con su hash, así nadie lo cambia». Tu trabajo es preguntar contra quién: contra un cable con ruido, o contra alguien que quiere engañar al que recibe. De esa pregunta sale si hace falta un hash a secas, un código de autenticación con clave, o una firma.Un servicio de CifraLab publica un dato junto a su SHA-256 «para que nadie lo cambie». Contra un error de transmisión funciona: si un bit se voltea por el camino, el hash deja de cuadrar y se nota. Contra un atacante no protege nada. Quien puede cambiar el dato también puede cambiar el hash que va al lado: altera el contenido, recalcula el SHA-256 del contenido nuevo, lo pega, y el que recibe comprueba y todo cuadra. Un hash es público y lo calcula cualquiera, así que por sí solo no distingue un cambio legítimo de uno malicioso.
La integridad frente a un adversario necesita algo que el atacante no tenga: un secreto. El hash a secas no lo tiene.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Un dato se publica junto a su SHA-256 «para que nadie lo cambie». ¿Protege contra un atacante que puede modificar el dato?
Ver pista de ayuda
El atacante que cambia el dato también cambia el hash de al lado. Para pararlo hace falta algo que él no tenga.
Lo que convierte un hash en una defensa frente a un atacante es una clave. Un código de autenticación de mensaje —un MAC, como HMAC-SHA256— mezcla el dato con una clave secreta compartida entre quien envía y quien recibe. Sin la clave no se puede generar el valor correcto, así que un atacante que cambie el dato no sabe producir el MAC que cuadre. Eso da integridad y autenticidad a la vez: el que recibe sabe que el dato no cambió y que vino de alguien que tiene la clave. Es el patrón correcto cuando las dos partes comparten un secreto y confían la una en la otra.
El salto del hash al MAC es exactamente el salto de «detectar accidentes» a «resistir a alguien que quiere engañarme».
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Dos servicios comparten una clave secreta y quieren que ninguno acepte un dato alterado del otro. ¿Qué usan?
Ver pista de ayuda
Lo que para a un atacante es un secreto que él no tiene. Un MAC mete una clave compartida dentro de la comprobación.
El MAC tiene un límite: todo el que puede verificar también puede generar, porque comparten la misma clave. Para difundir un dato a muchos que deben poder comprobar su origen sin poder falsificarlo —una actualización publicada, un aviso firmado— el MAC no encaja: tendrías que dar la clave a todos, y entonces cualquiera firmaría en tu nombre. Ahí entra la firma: se genera con una clave privada que solo tiene el emisor, y se verifica con la pública, que puede tener cualquiera. Añade algo que el MAC no da: no-repudio, la prueba de que fue ese emisor y no otro, verificable por quien no comparte ningún secreto con él.
MAC cuando las dos partes comparten clave y confían; firma cuando el que verifica no debe poder falsificar. La primitiva se elige por quién necesita verificar.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Un servicio difunde avisos a muchos receptores que deben comprobar que vienen de él, sin poder falsificarlos. ¿MAC o firma?
Ver pista de ayuda
Con un MAC, quien verifica también puede generar. Para que muchos comprueben sin poder falsificar, hace falta la clave pública de una firma.
Separaste tres niveles de integridad: el hash que detecta accidentes, el MAC que resiste a un atacante con clave compartida, y la firma que prueba el origen ante quien no comparte secreto. Esta verificación no se aprueba leyendo: abre el laboratorio, revisa los tres usos de integridad y lee el código que la auditoría dejó anotado al cerrar la sala.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Abre el laboratorio y revisa los tres usos de integridad. En las notas de auditoría de la sala queda anotado un código. Escríbelo tal cual.
Formato esperado: CIF-____
Ver pista de ayuda
El código está en el archivo de notas de la auditoría del escenario, no en la teoría de la sala.
Preparando el escritorio…
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.