¿Se puede cifrar un envío de formulario a pesar de que la barra de direcciones muestra HTTP?

2

Iba a solicitar una tarjeta de identificación de estudiante a través de ISIC, pero noté que el formulario donde solicitan los detalles de pago (como el número de tarjeta de crédito) no está disponible a través de HTTPS.

La URL de su formulario de compra es enlace

Le pregunté a ISIC sobre esto y respondieron que el envío del formulario está cifrado.

¿Es posible cifrar un envío de formulario de manera confiable cuando se accede al formulario a través del protocolo HTTP?

¿Cómo puede un usuario en este tipo de caso confirmar que el envío del formulario está cifrado, ya que el navegador (en mi caso Firefox) no indica el cifrado resaltando la URL en verde?

    
pregunta x457812 26.11.2014 - 18:22
fuente

3 respuestas

7

Para ampliar la respuesta de Thebluefish, el proceso de envío del formulario parece usar HTTPS (un protocolo cifrado) para el elemento de la tarjeta de crédito a https://connect.firstdataglobalgateway.com/IPGConnect/gateway/processing cuando estoy mirando la página. Pero esto no significa que esta configuración sea segura de usar.

La configuración general es muy vulnerable y debe corregirse. No enviaría ningún detalle de la tarjeta de crédito a través de este servicio y le recomendaría que no lo use. Si es absolutamente necesario que lo use, debe obtener una tarjeta de crédito prepaga con la cantidad necesaria para este servicio y luego usar esa tarjeta para minimizar el daño en caso de robo. O si su tarjeta de crédito ofrece un solo uso de números de tarjeta de crédito , posiblemente podría usar eso (aunque, de nuevo, podría serlo de alguna manera riesgo de que la tarjeta de crédito de un solo uso sea capturada y utilizada para una compra diferente).

El problema con la página es que todo excepto el envío del formulario se envía a través de HTTP no cifrado, que cualquier atacante de la red puede modificar de forma trivial. Por ejemplo, un atacante podría comprar un dominio y luego cambiar el dominio donde se envía el formulario HTTPS a uno que controlan (que incluso puede parecer similar).

Podrían mantener el formulario enviando los datos al dominio correcto a través de HTTPS, pero insertar javascript malicioso en cualquier lugar de la página o en una de las bibliotecas para vincular una acción y enviar los datos del formulario a una URL controlada por el atacante.

Una vez más, podríamos ver la página mientras se procesa ahora para nosotros y determinar que no realiza ninguna acción maliciosa. Pero cualquier enrutador / ISP / computadora entre usted y el servidor www.myisic.com podría cambiar el contenido actual de la página http sin cifrar a algo malicioso, lo que permite el robo de los datos de su tarjeta de crédito.

    
respondido por el dr jimbob 26.11.2014 - 21:31
fuente
3

Si observa el código fuente del formulario de la tarjeta de crédito, puede ver lo siguiente:

<form name="form" method="post" action="https://connect.firstdataglobalgateway.com/IPGConnect/gateway/processing" id="payForm">

Por lo tanto, el envío del formulario es a través de HTTPS. Esto debería ser correcto para garantizar que no se roben los datos de su tarjeta de crédito, aunque su información personal (nombre, dirección, etc.) se transmite a través de HTTP.

    
respondido por el Thebluefish 26.11.2014 - 18:34
fuente
-1

El cifrado se podría haber hecho con javascript antes de que se publique el formulario. Para hacerlo, el algoritmo de cifrado y la clave pública deben enviarse al cliente si se utiliza un cifrado asimétrico. Para el cifrado simétrico, deben enviarse tanto el algoritmo como la clave.

Sin embargo, no he encontrado ninguna biblioteca de encriptación javascript o función utilizada en la página. Un ejemplo de tal biblioteca sería CryptoJS. Por lo tanto, sus datos personales no están encriptados.

    
respondido por el limbenjamin 26.11.2014 - 18:43
fuente

Lea otras preguntas en las etiquetas