¿Riesgos asociados con la inyección de contenido HTTP?

2

Tengo curiosidad sobre los riesgos asociados con la inyección de contenido HTTP, donde un ISP inyecta contenido a las páginas a las que se accede a través de conexiones que no son HTTPS.

Algunos ejemplos:

  1. enlace

  2. enlace

Estoy preguntando específicamente sobre situaciones donde:

  1. La inyección solo se realiza contra conexiones HTTP. El ISP no está falsificando certificados SSL.

  2. El contenido inyectado no es malicioso. Por ejemplo, un banner que enumera los minutos libres restantes en una conexión WiFi del hotel.

¿El hecho de introducir este contenido introduce algún vector de ataque adicional que no sea el asociado con el uso de HTTP?

    
pregunta 5lihein1fe36bgqc 03.06.2015 - 15:10
fuente

3 respuestas

1

Teniendo en cuenta que el código que inyectan puede ser cualquier cosa, uno debería asumir que existen riesgos. Quizás su código tenga una vulnerabilidad que permita la inyección. Quizás oculte elementos importantes en la página. Tal vez hace referencia a un recurso externo (por ejemplo: JavaScript) de menor seguridad. ¿Quién sabe? Ciertamente me parece un riesgo.

Hay otros riesgos a los que usted está expuesto independientemente de la inyección. Por ejemplo, es probable que proporcionen un DNS personalizado de comportamiento desconocido. Así que estás en riesgo de seguridad DNS.

De hecho, ¿cómo sabe realmente que está usando el enrutador WiFi del hotel? En general no puedes.

Se considera malo utilizar enrutadores WiFi abiertos.

El uso de una VPN (uso PIA ) generalmente se considera una estrategia segura.

    
respondido por el Neil Smithline 03.06.2015 - 17:42
fuente
0

Un atacante activo que se haya posicionado para alterar el tráfico de su red puede hacer cualquier cosa que su ISP pueda hacer a su tráfico HTTP. En ese sentido, un MITM (su ISP) que inyecte contenido en una página no alterará la capacidad de otro MTIM (un atacante) para leer o escribir su tráfico.

Sin embargo, la principal preocupación parece ser los ataques pasivos que son minimizados por el servicio por parte de los mecanismos del lado del cliente. Desde tu primer artículo:

  

Incluso si Comcast no tiene ninguna intención maliciosa, e incluso si los piratas informáticos no acceden al JavaScript, la interacción del JavaScript con los sitios web podría "crear" vulnerabilidades de seguridad en los sitios web, dijo Schoen. "Su código, o la interacción del código con otras cosas, podría crear nuevas vulnerabilidades de seguridad en los sitios que no las tenían", dijo Schoen en una entrevista telefónica.

Como ejemplo trivial, supongamos que un sitio consume JSON como parámetro de URL como http://example.com/show?json={"foo":5,...} . El sitio utiliza la función de JavaScript JSON.parse para analizar el JSON. Mientras tanto, un desarrollador irreflexivo en el ISP ha incluido la línea JSON.parse = function(e){return eval("("+e+")")}; en su script MITM (porque JSON.parse no es compatible con los navegadores más antiguos y su comportamiento es básicamente un subconjunto de eval de todos modos).

Esto obviamente permitiría que un atacante te envíe un enlace como http://example.com/show?json=sendToBadGuys(document.cookie) para un resultado potencialmente desastroso. El atacante no necesita estar en posición de interceptar su tráfico; el atacante solo tiene que estar en posición de hacer que haga clic en un enlace . El ISP le dio una nueva vulnerabilidad de seguridad al sitio.

Por supuesto, nadie es lo suficientemente tonto como para sobrescribir completamente JSON.parse con eval (o, ese es el sueño, de todos modos), pero este ejemplo demuestra que la capacidad de un MITM para jugar con el entorno JavaScript es claramente peligroso. cosa, incluso cuando bien intencionada.

Además, como una preocupación completamente separada, cualquier información que incluya el MITM bien intencionado podría ser leída por un MITM malicioso. Por ejemplo, si la pancarta de su hotel agrega información personal como un "Tiempo restante para John Smith en la sala 123: diez minutos" a todas sus páginas web HTTP, eso también es obviamente una preocupación.

    
respondido por el apsillers 03.06.2015 - 17:58
fuente
0
  

riesgos asociados con la inyección de contenido HTTP ... estoy preguntando específicamente sobre situaciones en las que ... el contenido inyectado no es malicioso

Entonces, está preguntando si algo malo puede suceder cuando se inyecta contenido que no es malicioso por sí mismo. Las cosas más obvias son:

  • Inyecciones rotas, que no están destinadas a ser maliciosas, pero introducen involuntariamente nuevos vectores para ataques XSS o similares. No tengo conocimiento de un ejemplo real de inyecciones HTML, pero algunos ISP realizan una "adaptación de contenido" similar cuando el usuario intenta acceder a sitios que no existen y esto en realidad es condujo a explotaciones .
  • La inyección de rastreadores y anuncios de terceros puede causar los problemas que tienen los anuncios y rastreadores sin inyección, es decir, publicidad maliciosa, etc.

Menos obvio es que la inyección puede simplemente salir mal o interactuar mal con el sitio y, por lo tanto, causar un cambio en el comportamiento del sitio. Algunos ejemplos son la redefinición de las funciones de JavaScript utilizadas por el usuario, la redefinición de los ID de los elementos HTML que causan una interacción no intencional con CSS o Javascript, etc. Además, hay sitios frágiles que ya están algo fragmentados pero que son procesados por los navegadores (que son muy tolerantes) de todas formas. Estos sitios pueden entonces comportarse inesperadamente de una manera diferente.

    
respondido por el Steffen Ullrich 03.06.2015 - 18:12
fuente

Lea otras preguntas en las etiquetas