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.