¿Cómo evitar que aparezca un diálogo de inicio de sesión usando una imagen maliciosa y un encabezado de Autenticación básica HTTP?

7

Mientras utilizaba Firefox para navegar por mis foros, noté que un usuario malintencionado publicó una imagen (a través de hotlinks, no subiendo a mi servidor) con la extensión .png que cumple con las reglas del foro (permitiendo solo .png,. gif, .jpg, .bmp, etc.). Sin embargo, el usuario ha utilizado .htacess de manera que aparece un cuadro de Autenticación básica HTTP pidiéndole al usuario que vuelva a autenticarse.

Esto puede engañar a algunos de mis usuarios para que ingresen sus credenciales en el cuadro, mientras que en realidad el cuadro de autenticación es para el servidor en el que está alojada la imagen.

¿Cómo puedo prevenir este ataque?

    
pregunta user3196332 06.04.2014 - 02:44
fuente

3 respuestas

7

Creo que sé lo que está pasando contigo. En realidad, eso es exactamente lo que hago con la imagen en mi sección "acerca de mí" en mis perfiles de StackExchange. Es un archivo .php que recopila cierta información sobre el visitante (dirección IP, tipo de navegador, si el visitante está contento o no, etc.). Simplemente reescribí la URL para mostrar dos imágenes diferentes que de hecho son el mismo archivo .php .

Si permite que las personas accedan a archivos de enlace directo (especialmente los solicitados automáticamente por el navegador, como imágenes), no hay nada que pueda hacer al respecto. El navegador del usuario se conectará al otro servidor (en el que está alojada la imagen) y solicitará la imagen desde allí. Para el navegador, el enlace realmente apunta a una imagen .png . No puede notar la diferencia, ni su servidor / sitio.

Este es un ataque de ingeniería social en el que el atacante espera que el usuario use un navegador que muestre un diálogo de autenticación para contenidos mixtos. Lamentablemente, Firefox es uno de esos navegadores. En muchos de los casos, si al usuario se le presenta un diálogo de inicio de sesión en el sitio A que realmente se solicita para el contenido cargado desde el sitio B, es muy probable que el usuario ingrese las credenciales del sitio A (su sitio) y le roben su cuenta.

La solución: Tendrá que rechazar los contenidos de hotlinking de este tipo y volver a cargar las imágenes de enlace directo en su servidor y, a continuación, mostrarlas en su sitio web desde allí.

(A partir de febrero de 2016, Firefox aún se ve afectado por este problema entre dominios. Chrome solo muestra que la ventana emergente de los recursos cargados se encuentra en el mismo dominio)

    
respondido por el Adi 06.04.2014 - 23:47
fuente
2

Esto se denomina un ataque de phishing 403, y la única forma de evitarlo es evitar que el contenido generado por el usuario contenga enlaces a recursos externos que se representan en sus páginas, como las imágenes. Afortunadamente, no es un ataque particularmente común, pero puede ser preocupante, especialmente si las credenciales que los usuarios usan en su sitio tienen más probabilidades de ser de alto valor que el promedio.

Es posible que pueda encontrar un punto intermedio, como las fuentes externas conocidas en la lista blanca que un atacante no puede controlar como imgur o flickr, por ejemplo. Sin embargo, si desea permitir que los recursos se obtengan de dominios arbitrarios, siempre será vulnerable a este ataque, al menos hasta que los fabricantes de navegadores nos ofrezcan nuevas opciones para controlar diferentes desafíos de autenticación HTTP de origen.

    
respondido por el Xander 03.11.2014 - 16:09
fuente
-3

si alguien puede cambiar las entradas htaccess - en su servidor, es probable que sea hackeado.

el png puede contener código malicioso; puedes pegar la salida de

$ string strangefile.png 

cuando se ejecuta en el servidor? podría ser interesante

  

¿Qué es lo peor que pueden hacer con el enmascaramiento .htaccess? ¿Alguna forma de prevenirlo?

ellos tienen acceso a su servidor, lo más probable es que esté comprometido, si $ alguien puede alterar un archivo localmente en su servidor; Imagínate a ti mismo, ¿qué podría pasar entonces?

    
respondido por el that guy from over there 06.04.2014 - 12:29
fuente

Lea otras preguntas en las etiquetas