Semerkin Asked:2020-04-27 17:23:34 +0800 CST2020-04-27 17:23:34 +0800 CST 2020-04-27 17:23:34 +0800 CST 跨域 AJAX 772 为什么服务器允许每个人产生跨域ajax是不好的?我们将以与普通客户和所有案件相同的方式处理这些请求。我错过了什么? javascript 2 个回答 Voted Komdosh 2020-04-27T17:53:23+08:002020-04-27T17:53:23+08:00 如果服务器允许CORS (Cross-origin resource sharing),则可以使用存储在浏览器中的数据访问用户的个人信息。 例如,浏览器Cookie与用户的会话一起存储,则可以通过自己发送请求来代表该用户执行操作。一种此类攻击称为CSRF。 有很多方法可以防止此类攻击,但出于安全原因,许多服务器只是简单地禁止跨域访问。 Best Answer yar85 2020-04-27T18:46:25+08:002020-04-27T18:46:25+08:00 事实上,这样一个“全能”政策: 显着降低网络安全级别; 违背那些在网上创建垃圾以外的东西的人的利益。 假设 Vasya 使用流行的站点A,他有一个帐户和一些个人/敏感数据。然后 Vasya在另一个浏览器选项卡中打开由 Petya 制作的站点B 。 彼佳是个狡猾的婊子。他在访问站点A的站点页面上放置了一个脚本。如果 Petya 网站的访问者在此处获得授权,Petya 很容易窃取其他人的数据,并且还可以更改和删除它们。 在现实世界中,是什么阻止了这样的 Pets 这样做呢?同源政策! 另一个例子。 Ivan 在他的网站上创建了一个页面,他定期发布他的作品,这引起了大量访问者的兴趣。伊万的网站提供原创内容和快速运行,访问者很满意。 突然,Ivan 注意到他的服务器无法应对,访客抱怨。更糟糕的是,Petya 的网站出现在搜索引擎中,其中包含 Ivan 内容的副本——而且不仅带有作者身份,而且还被诸如“porn-with-donkeys-download-now”之类的广告所包围。 在查看日志后,Ivan 发现他的服务器被来自 Petya 站点的访问者的请求所淹没(因为他编写了一个执行间隔为 500 毫秒的 jQuery 解析器)。 在现实世界中,这有助于保护内容来自使用 jQuery 的愚蠢学童并节省超载?同源政策!
如果服务器允许
CORS (Cross-origin resource sharing)
,则可以使用存储在浏览器中的数据访问用户的个人信息。例如,浏览器
Cookie
与用户的会话一起存储,则可以通过自己发送请求来代表该用户执行操作。一种此类攻击称为CSRF
。有很多方法可以防止此类攻击,但出于安全原因,许多服务器只是简单地禁止跨域访问。
事实上,这样一个“全能”政策:
显着降低网络安全级别;
违背那些在网上创建垃圾以外的东西的人的利益。
假设 Vasya 使用流行的站点A,他有一个帐户和一些个人/敏感数据。然后 Vasya在另一个浏览器选项卡中打开由 Petya 制作的站点B 。
彼佳是个狡猾的婊子。他在访问站点A的站点页面上放置了一个脚本。如果 Petya 网站的访问者在此处获得授权,Petya 很容易窃取其他人的数据,并且还可以更改和删除它们。
在现实世界中,是什么阻止了这样的 Pets 这样做呢?同源政策!
另一个例子。
Ivan 在他的网站上创建了一个页面,他定期发布他的作品,这引起了大量访问者的兴趣。伊万的网站提供原创内容和快速运行,访问者很满意。
突然,Ivan 注意到他的服务器无法应对,访客抱怨。更糟糕的是,Petya 的网站出现在搜索引擎中,其中包含 Ivan 内容的副本——而且不仅带有作者身份,而且还被诸如“porn-with-donkeys-download-now”之类的广告所包围。
在查看日志后,Ivan 发现他的服务器被来自 Petya 站点的访问者的请求所淹没(因为他编写了一个执行间隔为 500 毫秒的 jQuery 解析器)。
在现实世界中,这有助于保护内容
来自使用 jQuery 的愚蠢学童并节省超载?同源政策!