CRIME ataque: si se puede inyectar Javascript en la máquina atacada, ¿por qué no enviar directamente la cookie a un servidor de eliminación?

1

Leí sobre el CRIME: ¿Cómo vencer al sucesor de BESTIA? pregunta y respuesta, pero no entiendo que: si se puede inyectar y ejecutar Javascript en la máquina atacada, ¿por qué no enviar directamente la cookie secreta como una solicitud AJAX a un servidor de eliminación hospedado por el atacante?

Cita:

  

Supongamos que el atacante utiliza algún código JavaScript que puede enviar solicitudes arbitrarias a un sitio de destino (por ejemplo, un banco) y se ejecuta en la máquina atacada;

    
pregunta user86334 09.09.2015 - 03:52
fuente

3 respuestas

2

Debido a que el JavaScript se ejecutará desde un origen diferente, la Política del mismo origen evitará que example.org capturando las cookies de bank.example.com .

Example.org ni siquiera tiene que haber sido comprometido. Un atacante Man-In-The-Middle (llamémosla Mallory) podría haber interceptado una conexión de la víctima (llamémosle Bob) al sitio benigno que Bob visita por http sin formato. p.ej. http://example.org .

Mallory inyecta algo de JavaScript en las respuestas recibidas de example.org que se ejecutarán en el navegador de Bob. Debido a que este JavaScript se recibe de example.org a los ojos del navegador, este JavaScript no puede acceder a las cookies en bank.example.com . Mallory no puede manipular el tráfico a bank.example.com porque esta conexión usa https, y todas las cookies están marcadas como seguras y / o HSTS.

Sin embargo, al usar el ataque CRIME, Mallory puede usar el JavaScript para enviar solicitudes de example.org a bank.example.com y luego monitorear el tráfico de la red. Con suficiente tráfico enviado a bank.example.com , se pueden determinar los valores de las cookies de Bob.

    
respondido por el SilverlightFox 10.09.2015 - 11:23
fuente
1

Además de la respuesta de Neil, si una cookie está marcada como HttpOnly , será inaccesible mediante javascript y, por lo tanto, no puede pasarlo al malvado servidor.

    
respondido por el David Waters 09.09.2015 - 06:42
fuente
1

El JavaScript no se inyecta en bank.com, se ejecuta en compromised.com que visita o le engañan para que lo visite. El JavaScript en compromised.com realiza solicitudes a bank.com en su nombre.

El atacante también debe poder ver el tráfico de su red, como en un punto de acceso Wi-Fi.

    
respondido por el Neil McGuigan 09.09.2015 - 05:47
fuente

Lea otras preguntas en las etiquetas