2010-02-08 42 views
5
inyección

Estoy queriendo averiguar si es o no es posible inyectar JavaScript en el control .NET WebBrowser desde fuera la aplicación en ejecución?JavaScript externo

Gracias

STW


Aclaración: Estoy queriendo saber si alguien puede hacerse con el proceso interno de los componentes envueltos e insertar manualmente lo que les gusta en la "navegador "parte de la aplicación.

+0

espero que no :) –

Respuesta

4

no es diferente de WebBrowser de Internet Explorer. Una vez que una aplicación puede obtener el identificador de ventana para WB, puede usar LresultFromObject() para obtener acceso a la interfaz de Accesibilidad, la utilizada por los lectores de pantalla. Tengo seen this used para obtener un puntero de interfaz IHmtlDocument2, que proporciona acceso al DOM. Por supuesto, una vez que una aplicación obtiene suficiente privilegio para hacerlo, habrá muchas otras formas de lograr lo mismo. Céntrese en asegurar IE primero, WebBrowser seguirá su ejemplo ya que es simplemente IE sin la ventana de marco.

0

Se puede aclarar lo que es el vector de ataque que le preocupa?

'¿A quién le preocupa que pueda inyectar datos en el objeto .NET WebBrowser: a) el usuario que ejecuta la aplicación? b) un programa que se ejecuta en el mismo cuadro bajo la misma identidad de usuario c) alguien olfateando el tráfico html (entre el usuario y el servidor web) y (quizá) modificándolo d) ¿otro sitio web que se abre en una pestaña diferente?

Es, básicamente, tiene que hacer un ejercicio de Amenazas modelo de su caso y comparten con nosotros los resultados (en este caso es algo de información sobre el modelado de amenazas: http://en.wikipedia.org/wiki/Threat_model)

0

Si cuando se pregunta en su aclaración " ... estoy queriendo saber si alguien puede hacerse con el proceso interno de los componentes envueltos e insertar manualmente lo que les gusta en la parte de "navegador" de la aplicación ...." quiere decir' ... otro proceso que se ejecuta en su computadora como el mismo usuario (digamos, por ejemplo, una copia maliciosa de WinZip) ... 'entonces SÍ será posible.

En Windows no hay separación entre procesos que pertenecen al mismo usuario, por lo que si tiene una aplicación XYZ que contiene un control WebBrowser, entonces otra aplicación (la aplicación WinZip maliciosa) podrá conectarse a ese proceso y manipular el contenido de lo que ves en ese WebBrowser.

(tenga en cuenta que Vista/Windows 7 han añadido UAC (User Control de Acceso) que creo que no impide que esto suceda)

+0

he llegado hasta este derecho? Cualquier proceso iniciado con mi usuario puede manipular cualquier otro proceso iniciado con mi usuario y, por lo tanto, cambiarlo o tomar datos de él? – TheChange

+0

sí, eso es correcto (creo que hay algunas advertencias que requieren algunas soluciones si se usa UAC (tenga en cuenta que Microsoft ha confirmado que UAC no es una tecnología de aislamiento de seguridad)) –

Cuestiones relacionadas