C# 将asp.net页面中的JavaScript代码注入另一个域中的html页面
如何将asp.net页面中的JavaScript代码注入另一个域中的html页面,例如。如何从我的应用程序将JavaScript注入此html页面 我目前正在制作一个类似Pinterest的插件,当html页面从我的应用程序打开时,页面上会自动显示一个类似Pinterest的书签 下面是我用来注入JavaScript的代码C# 将asp.net页面中的JavaScript代码注入另一个域中的html页面,c#,javascript,jquery,html,asp.net,C#,Javascript,Jquery,Html,Asp.net,如何将asp.net页面中的JavaScript代码注入另一个域中的html页面,例如。如何从我的应用程序将JavaScript注入此html页面 我目前正在制作一个类似Pinterest的插件,当html页面从我的应用程序打开时,页面上会自动显示一个类似Pinterest的书签 下面是我用来注入JavaScript的代码 public partial class ViewPage : System.Web.UI.Page { protected void Page_Load(objec
public partial class ViewPage : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string script = "javascript:(function(){var jsdom = document.createElement('script');jsdom.src = 'http://localhost:15064/Script/delete.js';document.body.appendChild(jsdom);})();";
Response.Redirect(Server.UrlEncode(script));
}
}
下面是我在执行上述代码后得到的错误
相同的原始策略将不允许您在其他人的域中运行脚本。如果不存在此策略,任何人都可以在任何域中运行脚本,这将是一个重大的安全风险 这条规则有几个*法律例外,你可以在下面阅读 在与双方达成协议之外,唯一的其他方式是违反相同来源的规定,可能是非法的
Xss攻击非常常见,可以按照您的描述进行操作。您可能能够获得的最接近的是bookmarklet: 这基本上是内联javascript的快捷方式 野外的一个例子是X射线护目镜。您可以通过创建新书签并将位置粘贴为来添加书签:
javascript:(function(){var script=document.createElement('script');script.src='https://goggles.webmaker.org/en-US/webxray.js';script.className='webxray';script.setAttribute('data-lang','en-US');script.setAttribute('data-baseuri','https://goggles.webmaker.org/en-US');document.body.appendChild(script);})();
这不允许您从应用程序中注入,但这是从浏览器中注入文档的一种方式。您不能这样做,这是一种安全漏洞(设想脚本是“重定向到银行网站并将所有资金转移给我”)