来自非安全页面的安全 jquery ajax 调用

信息安全 tls javascript 阿贾克斯
2021-08-20 04:40:37

我找不到明确的答案,但如果我有以下情况:我浏览到一个页面,比如说http://www.example.com/index.html

现在,我使用此页面上的表单将 jquery 的 ajax 函数回发到以下 URL: https ://www.example.com/login.aspx (aspx 可以是任何东西,mvc、webforms、php、ruby 等)。

这是否安全?我意识到并非整个会话都是安全的。

或者这是安全的,但浏览器会抱怨吗?使用完全不同的域会更安全吗?https://www.example.org/login.aspx

3个回答

不,它不安全,使用另一个域也无济于事。

攻击者可以操纵 http 页面上的 html/javascript 代码,将 ajax 调用的目的地更改为他自己的服务器。或者更好的是,添加第二个电话。

一旦您的浏览器访问域 www.example.com 并将 index.html 下载到您的浏览器,整个 html 就会存储在您的计算机上。由于存储在客户端的任何内容都可能被篡改,因此这被认为是不安全的,您不能相信客户端从脚本返回的数据,该脚本应该是 www.example.com 提供给用户的。

这意味着 login.aspx 必须将发送的每一位数据都视为脏数据并进行清理。

更改域并没有多大作用,浏览器不会抱怨 javascript 正在触发不同域上的表单。

像“SSL-Stripping”这样的攻击是如何利用这些方法的一个明显例子。这是一个易受攻击的设计。

Moxie 提供的一个基于 python 的简单工具来利用这种设计: http ://www.thoughtcrime.org/software/sslstrip/index.html