通过客户端脚本请求网站=交叉脚本脚本黑客。但是,通过服务器端脚本请求网站不是黑客!为什么?

StackOverflow https://stackoverflow.com/questions/3023050

通常,当我们想在同一页面中显示某些网页的内容时,我们会寻求AJAX请求。如果是这样,我请求使用AJAX的不同域中的网页,由于交叉脚本脚本错误,不允许使用。但是,为什么允许它通过服务器端页面访问。对于例如,我们可以在PHP中使用Curl访问任何站点。为什么此功能可以用于服务器端脚本,而对于客户端脚本不正确?

有帮助吗?

解决方案

因为恶意脚本可以打开外部页面,而无需用户出口。例如,想象一个不安全的文本area。如果向其他用户显示此文本框的内容,则可能包含一个连接到远程主机并将敏感用户信息发送到其的脚本。一切都归结为:服务器端 - >您正在控制,客户端 - >公共,因此容易滥用。

其他提示

看:

相同的原点政策

在计算中,相同的原始策略是许多浏览器端编程语言(例如JavaScript)的重要安全概念。该策略允许在源自同一站点的页面上运行的脚本可以访问彼此的方法和属性,而没有特定的限制,但可以防止访问不同站点上跨页面的大多数方法和属性。

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