我有一个站点,其中包含来自远程服务器的 AJAX 加载代码。如何禁止执行可能来自远程服务器的代码?“noscript”标签真的足够了吗?
我认为我们不应该关注</noscript><script>...</script>
即将到来的案例。
提前致谢!
我有一个站点,其中包含来自远程服务器的 AJAX 加载代码。如何禁止执行可能来自远程服务器的代码?“noscript”标签真的足够了吗?
我认为我们不应该关注</noscript><script>...</script>
即将到来的案例。
提前致谢!
如何禁止执行可能来自远程服务器的代码?
向您自己的服务器发出 Ajax 请求。从您的远程服务器请求数据。通过 HTML 解析器和白名单(XSS 过滤器)运行它。然后返回给客户。
“noscript”标签真的足够了吗?
noscript
如果浏览器不支持 JS ,则提供浏览器应该忽略的内容。它不提供任何类型的沙盒。
您可以针对要通过 ajax 加载的特定元素(使用选择器)。例如(希望这不会令人困惑,但这里有):
http://jsbin.com/efazun/2 - (第1页)有一个警报,在页面加载时显示“hello world”。
http://jsbin.com/ezewep/4/edit(第2页)-使用jquery load来加载第1页,显示hello world(加载时执行脚本-不好)
http://jsbin.com/ezewep/2/edit(第 3 页) - 使用 jquery load 加载Page 1,但仅针对文本,不执行任何脚本(没有 hello world 消息)。
欲了解更多信息:http ://api.jquery.com/load/