Bloquear ventana emergente usando código Javascript

1

Cuando un usuario ingresa sus credenciales en el formulario de inicio de sesión de una aplicación web, las credenciales pueden ser pirateadas a través de una extensión maliciosa (que el usuario ha instalado). Ahora, supongamos que la extensión maliciosa quiere pasar las credenciales pirateadas al servidor del atacante, esto se evita a través de la política del mismo origen de la web. Sin embargo, otra forma de pasar las credenciales al servidor del atacante es a través de una ventana emergente donde los detalles capturados se pueden analizar en la URL y pasar al servidor del atacante. La ventana se puede cerrar de inmediato. A pesar de que la posibilidad de tal ataque es mínima y el usuario la puede ver fácilmente, no se puede negar que no es imposible. En promedio, solo toma 1.5 segundos abrir y cerrar una ventana emergente donde las credenciales se pueden pasar al atacante. Y si suponemos que la ventana emergente es muy pequeña y está configurada para iniciarse en un lado de la pantalla, el usuario no tendrá idea de este ataque en absoluto.

Pero, si las páginas web tienen un método para evitar que aparezcan las ventanas emergentes, se puede evitar este ataque. Por lo tanto, me gustaría saber si hay posibilidades de bloquear la aparición de ventanas emergentes mediante el uso de Javascript.

    
pregunta Viswa 07.06.2017 - 16:10
fuente

2 respuestas

1

No, no es posible evitar las ventanas emergentes desde Javascript.

  

Ahora, supongamos que la extensión malintencionada quiere pasar las credenciales pirateadas al servidor del atacante, se evita a través de la política del mismo origen de la web.

Esto no es correcto. Enviar datos de origen cruzado siempre es posible. Por ejemplo, puede colocar una etiqueta de imagen en la página con Javascript que tenga una URL como enlace .

En general, las extensiones del navegador tienen más permisos y privilegios que el Javascript que se ejecuta en una página, por lo que no hay mucho que pueda hacer desde la página para protegerse contra las extensiones maliciosas.

    
respondido por el Sjoerd 07.06.2017 - 16:30
fuente
0

Una forma segura de bloquear ventanas emergentes es especificar un caja de arena usando el encabezado de la política de seguridad de contenido.

Content-Security-Policy: sandbox allow-scripts;

En el modo de caja de arena, muchas funciones están deshabilitadas, incluidas las ventanas emergentes:

  

allow-popups :       Permite ventanas emergentes (como desde window.open , target="_blank" , showModalDialog ). Si esta palabra clave no se usa, esa funcionalidad fallará silenciosamente.

    
respondido por el Sjoerd 08.06.2017 - 08:36
fuente

Lea otras preguntas en las etiquetas