¿Es un problema devolver la misma información confidencial (PCI, PII) del servidor en la respuesta HTML que un usuario publicó anteriormente en el servidor?
En nuestra página web, el usuario ingresa cierta información clave (nombre / dirección / tarjeta / número de cuenta / etc.), que luego se publica en nuestro servidor y le enviamos una página con información no confidencial (fechas, cuenta balance, etc.) junto con la información clave que acaba de proporcionar, de modo que el usuario pueda cambiar algunos valores clave para modificar la búsqueda.
Ejemplo:
POST al servidor: ...&cardNumber=1111222233334444&...
Respuesta del servidor: <html> ... <input name="cardNumber" value="1111222233334444" ... /> Here are some details about your card... </html>
El sitio web recientemente se sometió a una evaluación de seguridad en la que el revisor señaló este comportamiento como una vulnerabilidad de alta prioridad, por lo que no debemos devolver ninguna información confidencial no enmascarada en la respuesta HTML del servidor ( value="111122223333444"
en el ejemplo anterior). Mencionaron el ataque MITM, donde alguien puede robar información confidencial de los datos HTML.
Los desarrolladores desafiaron esto diciendo que el MITM puede robar datos de ambas formas de tráfico, por lo que el MITM podría robar los datos del mensaje POST y el servidor no está enviando datos más confidenciales de lo que se envió originalmente al servidor. Y proporcionaron algún rastro de red que muestra algunos sitios web bien conocidos en Internet que también realizan esta práctica.
¿Quién tiene razón: el revisor de seguridad o los desarrolladores, y por qué?
Tenga en cuenta que solo se puede acceder al sitio web a través de HTTPS y otras medidas de seguridad (control de caché, caducidad de página, etc.) también implementadas.