Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Integridad de recursos del navegador

5 tareas · 38 min · Principiante

La política de contenido dice de dónde puede venir un script; no dice si lo que llega es lo que revisaste. La integridad de subrecursos (SRI) cubre ese hueco: el navegador compara el archivo recibido con una huella y lo rechaza si no coincide. Funciona, pero tiene condiciones, y mal usada rompe el pago un jueves por la mañana. En esta sala lees el HTML de la página de pago de Capuli Tienda en Línea, la consola de un navegador de pruebas y el aviso de un proveedor. Todo es lectura de archivos ficticios.

0 de 5 · 0%

Objetivo de la sala

La política de contenido dice de dónde puede venir un script; no dice si lo que llega es lo que revisaste. La integridad de subrecursos (SRI) cubre ese hueco: el navegador compara el archivo recibido con una huella y lo rechaza si no coincide. Funciona, pero tiene condiciones, y mal usada rompe el pago un jueves por la mañana. En esta sala lees el HTML de la página de pago de Capuli Tienda en Línea, la consola de un navegador de pruebas y el aviso de un proveedor. Todo es lectura de archivos ficticios.

Con SRI, la etiqueta que carga un script o una hoja de estilos lleva un atributo integrity con una huella (un hash) del archivo que se revisó. El navegador descarga el recurso, calcula su huella y, si no coincide, no lo ejecuta. Así, si el servidor del proveedor o su red de distribución es comprometido y cambia el archivo, el cambio no llega al cliente.

Tiene límites. No dice que el archivo sea seguro: dice que es el mismo que revisaste. No sirve si lo que quieres es que el script cambie con el tiempo. Y para un recurso de otro origen, la etiqueta también necesita el atributo crossorigin y el servidor debe permitir la lectura entre orígenes; si no, el navegador no puede comprobar nada y lo rechaza.

Responde para continuar

¿Qué asegura exactamente el atributo de integridad en un script de otro dominio?

El fragmento de HTML de la página de pago mezcla recursos propios, de terceros con huella y de terceros sin ella. Los propios no necesitan SRI (los sirve la misma tienda); los de terceros sí lo piden. Un recurso con atributo integrity pero sin crossorigin es otra cosa: sí tiene huella, solo que no funcionará, y lo verás en la tarea siguiente.

Abre el fragmento de la página de pago y busca el script de otro origen que se carga sin ningún atributo de integridad.

Responde para continuar

Escribe el nombre del archivo del script de tercero de la página de pago que no lleva huella.

Una huella mal gestionada falla en silencio para el cliente: la página parece normal y el pago no funciona. La consola del navegador sí lo cuenta. Los mensajes de este laboratorio están simplificados, pero distinguen dos causas: la huella no coincide con el archivo recibido, o el recurso de otro origen no se puede leer.

Abre la consola del navegador de pruebas y busca el recurso bloqueado porque su huella ya no coincide.

Responde para continuar

Escribe el recurso bloqueado porque su huella no coincide.

Un script protegido en una página puede estar sin proteger en otra. La cobertura se mide sobre todas las páginas, y los recursos propios quedan fuera de la cuenta porque no los pide el control.

Abre la tabla de páginas y recursos. Cuenta los recursos de origen tercero cuya columna de integridad dice «no», en todas las páginas.

Responde para continuar

¿Cuántos recursos de tercero se cargan sin huella en el conjunto de las páginas? Escribe solo el número.

El aviso del proveedor de pagos explica el bloqueo: su ruta general se actualiza sin cambiar de nombre, de modo que la huella revisada deja de valer en cuanto sale una versión. Ofrece también rutas con la versión en el nombre, cuyo contenido no cambia. Las tentaciones habituales son quitar la huella para que «funcione» o fijarla a la ruta móvil y esperar suerte.

Responde para continuar

¿Qué haces con la página de pago?

Inicia sesión para registrar tus puntos y progreso en el ranking.

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