Considere el siguiente escenario dando un ataque hipotético:
-
Crypto.com está vendiendo cryptostocks y acepta pagos usando un procesador de pagos PayEasy.com. Las páginas completas del sitio (de crypto.com) se sirven utilizando HTTPS.
-
Mientras viaja a un país extranjero, Bob visita crypto.com en su computadora portátil desde la red de su hotel y hace clic en el botón "comprar ahora" para obtener 10 cryptostocks. Se reenvía a PayEasy.com mediante un enlace.
<a href='https://PayEasy.com/pay?amt=100&id=bob'/>
- Un atacante (como el ISP) se las arregla para redirigir todo el tráfico destinado a
PayEasy.com
de la computadora de Bob a un sitio falso que ha configurado llamadoPayEazy.com
. Cuando Bob realiza una consulta de DNS para PayEasy.com, el atacante devuelve la dirección IP de PayEazy.com. Este sitio también tiene una conexión HTTPS usando un SSL genuino obtenido de una CA usando "domain-validation ". El certificado confirma que el sitio es servido por payeazy.com. Un atacante debe hacer esto, ya que de lo contrario, el navegador de Bob dará una advertencia y puede fallar el ataque. Por lo tanto, Bob hace clic en un enlace equivalente a<a href='https://PayEazy.com/pay?amt=100&id=bob'/>
- Bob nunca sospecha nada porque ve la barra verde y ni siquiera se ha molestado en leer en el sitio de crypto.com que usa PayEasy.com. Incluso si Bob sabía que PayEasy.com es el procesador de pagos de crypto.com, no nota la leve diferencia en PayEazy.com. Bob hace el pago de $ 100 por 10 cryptostocks y espera, pero nunca llegan.
- Bob asume que Crypto.com es un estafador y los demanda. A medida que se desarrolla el caso, los abogados de Crypto.com le piden a Bob que pruebe que Crypto.com lo envió a enlace en lugar de enlace . Bob no puede probar esto y pierde. El caso podría haber sido de cualquier manera, ya que incluso Crypto.com no pudo probar que efectivamente enviaron a Bob a enlace y no a enlace
En primer lugar, este ataque es realista. En segundo lugar, ¿cómo prevenirlo? (Esto es similar al ejemplo dado en el artículo PalmPilot de Schneier )
Como ejemplo de este ataque: enlace es un enlace seguro a google.com
. Suponiendo que este sitio ( security.stackexchange.com
) se sirve a través de HTTPS. Ahora edite su ' hosts.file ' para que la dirección IP de google.com
apunte a yahoo.com
y haga clic en el enlace anterior.