这些方法防止js注入坑啊

桌子旁边有个仙人掌 2013-03-20 11:27:22
第一种方法

string bb = "<a href=\"http://www.baidu.com\">百度</a>";
Response.Write(Server.HtmlEncode(bb));

页面上会输出 <a href="http://www.baidu.com">百度</a> 而不是超链接,你自己看着也不爽吧

第二种

AntiXSSLibrary

这玩意


string cc = Encoder.HtmlEncode("你好啊啊啊啊");
Response.Write(cc);


页面上显示的是中文,查看源文件文本
是 一大堆乱七八糟的东西 你好啊啊啊啊
这东西搜索引擎能看懂吗

第三种


string d = "<a href=\"http://www.baidu.com\">百度</a>";
Response.Write(Sanitizer.GetSafeHtmlFragment(d));



页面上显示的是 百度 不是超链接 查看源文件 <a>百度</a>
我插入的链接呢,你很恶心吧

不会整啊,谁能告诉俺啊
...全文
565 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
列表页面是新闻标题和摘要 这个没有什么问题 可是具体页面呢 新闻里面的内容要连接到产品的吧 站内连接 这个是必须的啊 这个不能用Server.HtmlEncode 啊 用了页面就是这种形式了 <a href="http://www.baidu.com">百度</a>
  • 打赏
  • 举报
回复
现在编辑器都是富文本编辑器 表现力好啊,可是我该怎么控制不让JS代码在浏览器上执行 还不影响其它超链接呢 把微软继续枪毙十分钟
  • 打赏
  • 举报
回复
2楼用户所提到的没有解决我的问题 超链接估计没有生存余地了 只有UBB了吗 坑啊,拉出去枪毙微软十分钟
md5e 2013-03-20
  • 打赏
  • 举报
回复
第一种 public static string HTMLEncode(string txt) { string Ntxt = txt; Ntxt = Ntxt.Replace(" ", " "); Ntxt = Ntxt.Replace("<", "<"); Ntxt = Ntxt.Replace(">", ">"); Ntxt = Ntxt.Replace("\"", """); Ntxt = Ntxt.Replace("'", "'"); Ntxt = Ntxt.Replace("\n", "<br>"); return Ntxt; } 第二种 public static string noHtml(string txt) { if (txt != "" || txt != null) { //System.Text.RegularExpressions.Regex objReg = new System.Text.RegularExpressions.Regex(@"<[\s\S]*?>|&[\s\S]*?;", System.Text.RegularExpressions.RegexOptions.Multiline); System.Text.RegularExpressions.Regex objReg = new System.Text.RegularExpressions.Regex(@"<[\s\S]*?>", System.Text.RegularExpressions.RegexOptions.Multiline); int i = 0; while (objReg.IsMatch(txt, 0) && i < 1000) { txt = objReg.Replace(txt, ""); i++; } } else { txt = ""; } return txt; } 第三种 UBB
村长_乐 2013-03-20
  • 打赏
  • 举报
回复
引用 8 楼 xc_up 的回复:
很悲剧 为了试验,我的博客貌似不能用了 进不去了,一进去就跳转
按一楼的形式,不要去除所有html标签,只是去除<script>标签
  • 打赏
  • 举报
回复
很悲剧 为了试验,我的博客貌似不能用了 进不去了,一进去就跳转
  • 打赏
  • 举报
回复
我就存这些内容啊 很平常啊

<strong><a href="http://www.zzksjx.com/threadproducts/20110718152538.html">锤式破碎机</a></strong>是直接将最大粒度为600-1800毫米的物料破碎至25或25毫米以下的一段破碎用破碎机。锤式破碎机适用于在水泥、化工、电力、冶金等工业部门破碎中等硬度的物料,如石灰石、炉渣、焦碳、煤等物料的中碎和细碎作业。其有这么好的用途当然其最主要的设备锤头也
  • 打赏
  • 举报
回复
我刚才在博客园 在自己的博客上 写了一个跳转函数 竟然成功执行了 location.href="http://cnpsj2013.qybgp.52820.net/8.aspx?a=111" http://www.cnblogs.com/xiaoche/ 我在另外一个网站上写了一个接受a参数的页面 在Response.Write出来 假如有人使坏,那访问那个人的博客的人岂不是要遭殃了? 这是什么情况
joyhen 2013-03-20
  • 打赏
  • 举报
回复
你保存的是什么内容到数据库里面?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧