¿Cuáles son las vulnerabilidades potenciales que pueden surgir si una página web está parcialmente encriptada?
Puedo pensar en 2 posibilidades:
-
Puede cambiar las partes no cifradas de la página (HTML, CSS, Images, JS) a través de un ataque MITM para cambiar parcialmente el aspecto de la página.
-
Puede inyectar JS malintencionado a través de la conexión insegura para robar / modificar las partes cifradas de la página, lo que hace que toda la conexión sea insegura.
¿Es posible el segundo escenario o incorporan los navegadores web algunos mecanismos de seguridad para evitar que suceda?
Esta pregunta también tiene implicaciones con respecto al Stack Exchange n / w, ya que solo se encripta el iframe que contiene el formulario de inicio de sesión dentro de la página de inicio de sesión: enlace
Actualización:
Como señaló @Ladada, esta pregunta se divide en varias partes:
Caso 1: una página insegura que carga un iframe seguro para transmitir datos confidenciales
Respuesta : como davidwebster48 señaló en su respuesta, este mecanismo está trivialmente derrotado, ya que la página principal insegura puede manipularse para cargar el iframe con una página diferente del gusto del atacante. Como nota al margen, esto significa que el sistema de inicio de sesión de StackExchange es vulnerable a los ataques MITM a pesar de usar los formularios de inicio de sesión https.
Caso 2: una página segura que carga una página insegura a través de un iframe
(Suponiendo que el iframe inseguro no maneja datos confidenciales). Este caso es particularmente interesante porque las políticas del mismo origen también entran en la ecuación. Incluso si ambas páginas pueden ser del mismo dominio, ya que ambas usan protocolos diferentes, (un HTTPS y el otro HTTP), esto causará que se activen restricciones del mismo origen. No estoy seguro si estas restricciones son suficientes para detener a nuestro atacante muerto en sus pistas.
Caso 3: una página segura que enlaza con JS inseguro
Mi respuesta : creo que esto obviamente es un error, ya que el atacante podría modificar el archivo JS para acceder / manipular toda la página.
Caso 4: una página segura que enlaza con fuentes inseguras como imágenes, CSS
¿Podría el atacante cambiar la apariencia de la página para realizar un ataque de phishing? ¿O podría montar un ataque de secuencias de comandos entre sitios?