Preguntas sobre el ataque de descarga de archivos reflejados (RFD)

9

Leí este artículo y el documento técnico del investigador de seguridad Oren Hafif , que menciona los siguientes puntos destacados:

  

RFD, como muchos otros ataques web, comienza enviando un enlace malicioso.   a una victima Pero a diferencia de otros ataques, RFD termina fuera del navegador.   contexto:

     
  1. El usuario sigue un enlace malicioso a un sitio web de confianza.
  2.   
  3. Un archivo ejecutable se descarga y se guarda en la máquina del usuario.   Todos los indicadores de seguridad muestran que el archivo fue "alojado" en el   sitio web de confianza.
  4.   
  5. El usuario ejecuta el archivo que contiene comandos de shell que obtienen   control total sobre la computadora.
  6.   

Un ejemplo de una URL maliciosa se ve así:

https://www.google.com/s;/ChromeSetup.bat;/ChromeSetup.bat?gs_ri=psy-ab&q=%22%7c%7c%74....

Esto se parece al error de shellshock reciente, excepto que el ataque se dirige al cliente en lugar del servidor. Mis preguntas son:

  • ¿Google aloja un archivo ChromeSetup.bat en un directorio /s; en su servidor?
  • ¿Qué sistemas operativos son vulnerables? ¿Es este ataque específico a un particular? versión del sistema operativo Windows?
  • ¿Cómo pueden protegerse los clientes si un sitio web permite a su usuario colocar URL maliciosas en el atributo src de una etiqueta <img> ?
pregunta Question Overflow 31.10.2014 - 10:43
fuente

1 respuesta

9
  1. Google no aloja ChromeSetup.bat. Un requisito para este ataque es que un sitio web debe tener un punto final con un tipo de contenido menos común y, preferiblemente, un encabezado de disposición de contenido mal configurado (a saber: sin atributo 'nombre de archivo'). Estos dos encabezados harán que el navegador descargue la respuesta como un archivo, en lugar de representarlo.

En la URL que proporciona, el punto final es '/ s', que proporciona sugerencias de autocompletado como JSON, con un tipo de contenido de application / json. Las versiones anteriores de IE solicitarán una descarga solo en función del tipo de contenido, las versiones más recientes y Chrome requieren ese encabezado de disposición de contenido incompleto para que este ataque funcione.

Otro requisito es que este punto final debe reflejar alguna entrada del usuario de la cadena de consulta (los datos de publicación o cookie obviamente funcionarán también, pero no serían tan efectivos para el atacante). Esto proporcionará el contenido malicioso del archivo que se descarga.

En la URL que proporcionaste, este será el valor del parámetro de cadena de consulta.

Como no se proporciona ningún nombre de archivo para la descarga, los navegadores intentan elegir uno. Debido a que el sitio web de Google permitió URL sueltas a través de los parámetros de la URL (la parte /ChromeSetup.bat;), el navegador seleccionó una versión limpia de eso (a saber, ChromeSetup.bat) como el nombre de archivo para presentar al usuario. La aplicación web ignora esta entrada, pero el navegador la usa.

  1. Cualquier navegador en cualquier sistema operativo podría responder de esta manera. Chrome descargará la respuesta con el nombre de archivo falsificado, que también funcionará en OSX.

Existe una debilidad adicional en Windows que no advierte al usuario correctamente cuando se produce "configuración" en el nombre del archivo. Windows también ejecutará directamente un archivo .bat si hace clic en él. Osx y Linux no ejecutarán este archivo, ya que el atacante probablemente no pueda proporcionar un shellscript completo con la notación hashbang. Incluso entonces, no tiene el bit de ejecutable establecido, por lo que no se ejecutaría directamente.

  1. El usuario todavía tiene que activar / aceptar la descarga, por lo que solo conducir con un no causará una "infección" inmediata. Un cliente (navegador) debe proporcionar las advertencias adecuadas para los archivos ejecutables en lugar de simplemente ejecutarlos. El usuario debe saber que no debe ejecutar archivos .bat aleatorios, pero esa es la fuerza de este ataque: el "archivo" se entrega desde Google.com, por lo que debería ser seguro, ¿no? La parte más importante aquí es el sitio web vulnerable: el sitio web no debe permitir que un usuario proporcione una ruta personalizada, debe proporcionar los encabezados adecuados para evitar esto y debe reconsiderar las opiniones del usuario.
respondido por el NSSec 31.10.2014 - 12:11
fuente

Lea otras preguntas en las etiquetas