¿Es el pago usar un iframe más seguro que usar la biblioteca de Javascript?

2

Tradicionalmente, la mayoría de los proveedores de pago solo proporcionan sitios de pago alojados a través de redirect o iframe. Pero ahora un número cada vez mayor también es compatible con la integración de pagos a través de una biblioteca de Javascript.

Imagino el caso en el que un atacante puede inyectar código en la aplicación web: el atacante aún no podría leer el contenido del iframe debido a la política de origen del mismo. Por otro lado, en el caso de JS lib, un jQuery 1-liner es suficiente para enviar los datos de la tarjeta de crédito del usuario a algún servidor.

¿Es correcta esta vista? ¿O son ambas opciones igualmente seguras, porque una vez que un atacante puede inyectar código, podría hacer (casi) cualquier cosa de todos modos?

    
pregunta Philip 02.09.2014 - 11:56
fuente

1 respuesta

4

Aunque la política del mismo origen puede impedir que un atacante acceda al contenido legítimo de iFrame, el problema es que el usuario no tiene forma de verificar que realmente esté interactuando con el iFrame legítimo (a excepción de ir a la fuente que más los usuarios no van a hacer). Un atacante podría reemplazar la fuente iFrame con una página de phishing y obtener los datos de la tarjeta de crédito de los usuarios de esa manera.

Tanto las puertas de enlace basadas en iFrame como las basadas en JS son vulnerables a aproximadamente los mismos problemas, por lo que yo diría que ambas son inseguras en comparación con las puertas de enlace alojadas. Los beneficios de las puertas de enlace alojadas son que:

  • El usuario puede verificar la URL para asegurarse de con quién está interactuando
  • El usuario puede validar el certificado SSL / TLS y el cifrado para estar aún más seguros de con quién están interactuando
  • Lo más probable es que una pasarela de pago operada por un banco sea mejor probada para detectar vulnerabilidades que algún sitio arbitrario.
  • Los usuarios pueden confiar razonablemente en la integridad de sus detalles de pago si la puerta de enlace externa muestra los totales, etc. Comparado con el sitio donde el sitio puede decir que le cobrarán una cosa, luego le cobrarán otra.

Por otra parte, la transferencia de usuarios a una pasarela de pago externa se considera una mala experiencia para el usuario y la conexión con un procesador de pagos en el lado del servidor es complicada, por lo que se hacen concesiones y estas pasarelas basadas en JS se están volviendo populares. p>     

respondido por el thexacre 02.09.2014 - 12:14
fuente

Lea otras preguntas en las etiquetas