如果 SSL 页面在非 SSL 页面中进行了 iframe,并且该 SSL 页面具有提交数据的表单,那么表单提交 (POST) 是否仍然安全?
如果没有,我该如何确保它的安全?
谢谢。
将表单的操作明确设置为“https://...”,因此它总是会出现 SSL
如果 SSL 页面在非 SSL 页面中进行了 iframe,并且该 SSL 页面具有提交数据的表单,那么表单提交 (POST) 是否仍然安全?
加密?是的。
安全的?不。
中间人攻击者可以篡改父页面,例如:
包括针对 iframe 的点击劫持攻击,例如覆盖虚假表单元素或提取内容(请参阅“下一代点击劫持”了解一系列可能的攻击)
将 iframe 的源更改为预期 HTTPS 地址以外的其他位置 - 另一个不受保护的 HTTP 连接,或属于攻击者的 HTTPS 站点。浏览器不提供检查普通消费者可用的 iframe 来源的方法。
在这种情况下,表单内容可能会受到损害,而不会向用户表明该表单未被正常处理。
如果没有,我该如何确保它的安全?
唯一的答案是对父页面和 iframe 表单都使用 HTTPS。
我相信从安全 iframe 提交的表单仍然是安全的,因为你很容易受到中间人的攻击。主要的非安全页面上的 javascript 注入可能会危及安全 iframe。
鉴于网站不安全(只有 iframe 安全),您也不会在浏览器中看到挂锁图标
Stackoverflow 上的另一个主题解释了这一点:iframe an SSL secure form on a non SSL site