我们正在与第三方交谈,将他们的一些数据包含在我们的网站上,他们想要么通过iframe这样做,因为我不喜欢这样做,因为响应性的原因。
他们提供的其他选项是包含一个javscript文件,该文件将接受一个参数,以知道要将结果放入哪个DOM元素。
基本上,这让他们可以访问我们网站的javascript范围,如果他们愿意,可以做一些事情,比如隐藏、dom、对象等等。
我的问题是,我有什么安全问题要考虑吗?例如,他们能否在javascript中编写恶意代码,最终从我们的服务器读取.php文件,并从配置文件中获取密码等?还是他们唯一能做的与DOM相关的事情?
发布于 2015-12-01 14:41:26
他们可以:
他们不能:
Javascript在浏览器中运行而不是在服务器上运行。
发布于 2015-12-01 14:41:43
您本质上是给予他们可信的XSS特权。
如果您可以在web浏览器中进行某些操作(发布帖子、“浏览”页面等),则可以使用JavaScript实现其自动化。除非你(或你的用户)能够上传/修改你的PHP文件,否则他们将无法上传/修改你的PHP文件。
对于用户来说,你给了他们模仿你的能力。
对你来说,你给了他们模仿用户的能力。
发布于 2015-12-01 14:42:31
例如,他们能否在javascript中编写恶意代码,最终从我们的服务器读取.php文件,并从配置文件中获取密码等?
他们可以在您的页面上包含的JavaScript代码中为他们做任何事情,就像在页面上的JavaScript代码中所做的那样。所以这可能是你能做的任何事客户端。它包括(例如)获取暴露于页面的会话信息,并能够将该信息发送到其他地方。
如果您不信任他们不会这样做,不要将他们的JavaScript包括在您的页面中。
我们正在和第三方谈话,把他们的一些数据放到我们的网站上
让他们将这些信息作为数据而不是代码提供给您,您可以通过ajax请求,并让它们为来自您的请求的相关跨源资源共享启用。然后,你知道你只是在获取他们的数据,而不是让他们运行代码。
请注意,使用JSONP而不是CORS将使它们能够再次运行代码,因此如果您不信任CORS,那么它必须是真正的ajax。
https://stackoverflow.com/questions/34022936
复制相似问题