Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Ventanas abiertas y la referencia al que abrió

5 tareas · 36 min · Principiante

Cuando una página abre otra en una pestaña nueva, el navegador puede dejarle a la nueva una referencia a la que la abrió. Esa referencia no permite leer la pestaña original, pero sí cambiarle la dirección mientras la persona mira la otra. Varios candidatos de Empleos Tangaral volvieron a la pestaña del portal y encontraron una página de ingreso que no era la suya. Se lee el inventario de sitios donde el portal abre ventanas, las ofertas de la semana y los tickets de soporte.

0 de 5 · 0%

Objetivo de la sala

Cuando una página abre otra en una pestaña nueva, el navegador puede dejarle a la nueva una referencia a la que la abrió. Esa referencia no permite leer la pestaña original, pero sí cambiarle la dirección mientras la persona mira la otra. Varios candidatos de Empleos Tangaral volvieron a la pestaña del portal y encontraron una página de ingreso que no era la suya. Se lee el inventario de sitios donde el portal abre ventanas, las ofertas de la semana y los tickets de soporte.

La página abierta recibe en window.opener una referencia a la que la abrió. Si son de orígenes distintos, la política del mismo origen le impide leer su contenido, sus cookies o su almacenamiento. Pero hay operaciones que la política permite entre orígenes, y una de ellas es asignar una nueva dirección a esa ventana. El ataque conocido como cambio de pestaña inverso usa justo eso: mientras la persona está en el sitio nuevo, la pestaña del portal pasa a una copia falsa de su página de ingreso. CWE lo recoge como CWE-1022 (enlace web a un destino no confiable con acceso a window.opener).

Responde para continuar

Una página de otro origen abierta por el portal tiene window.opener. ¿Qué puede hacer con él?

Ver pista de ayuda

La política impide leer, pero no todo lo demás.

No todas las formas de abrir una ventana dejan la referencia. Los navegadores actuales tratan un enlace <a> con target="_blank" como si llevara rel="noopener": la página nueva recibe window.opener vacío. Esa protección por defecto no alcanza a window.open(), que entrega la referencia salvo que se pida lo contrario en su tercer argumento. Y rel="noreferrer" también corta la referencia, además de no enviar el Referer.

Abre aperturas.txt y piensa, para cada fila, si la ventana nueva queda con referencia y si el destino es un tercero.

Responde para continuar

¿Qué apertura deja a un sitio de terceros con una referencia a la pestaña del portal? Escribe su identificador.

Ver pista de ayuda

Una de las dos aperturas con referencia es la del propio inicio de sesión del portal.

Los tickets dicen qué oferta estaban viendo los candidatos cuando la pestaña cambió. Cada oferta tiene su enlace de postulación, que es justo lo que abre la apertura de la tarea 2. Cruza tickets-soporte.txt con ofertas.txt, descartando los tickets marcados como no relacionados. Si todos apuntan al mismo sitio, lo más probable es que ese sitio esté comprometido o lo controle un tercero, y hay que avisarle a la empresa.

Responde para continuar

¿Desde qué host se cambió la pestaña del portal? Escribe el host sin esquema.

Ver pista de ayuda

Los cuatro tickets relacionados corresponden a dos ofertas de una misma empresa.

Para la respuesta al incidente importa cuántas cuentas hay que dar por comprometidas: las de quienes escribieron su contraseña en la página falsa. Esas cuentas necesitan cambio de contraseña, cierre de sesiones abiertas y aviso a la persona.

Responde para continuar

¿Cuántos candidatos escribieron su contraseña en la página falsa? Escribe solo el número.

Ver pista de ayuda

Cuenta los «sí» de los tickets relacionados.

La corrección directa es abrir la postulación sin referencia, con noopener en window.open(). Hay una tentación: poner en el portal la cabecera COOP con el valor que mantiene las ventanas emergentes, porque el inicio de sesión (V4) necesita la suya. Pero ese valor está hecho para conservar la referencia con las ventanas que el portal abre; justo la de V2 seguiría ahí. Por otro lado, el valor más estricto de COOP cortaría la referencia en todas las aperturas hacia otro origen, también la del inicio de sesión, que vive en otro subdominio. Esto se ve con más detalle en la sala 5.

Responde para continuar

¿Qué recomiendas para V2?

Ver pista de ayuda

Recuerda qué conserva el valor de COOP que permite ventanas emergentes.

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