html以text文件输出(防止脚本攻击)

YuFS 2014-05-27 09:26:08
假如页面有很多个<td><td>标签,现在要向它们之中输入内容,如“<script>alert('XSS td')</script>”。

问题:如果让这些(注意是很多个)要输入的内容,以text文本的形式输入而不是以Html的形式输入呢?
目的:让html内容标签失效
...全文
282 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2014-05-27
  • 打赏
  • 举报
回复
引用 4 楼 yfs2468 的回复:
引用 1 楼 zy205817 的回复:
正则匹配html标签替换掉
1楼2楼,我不想替换,想要保留,只是不执行script语句。至少尝试innerTEXT或者jquery的text可以有效不执行的,只是我的html很多,没有办法一个一个的处理,想找指量有效方法。等待高手
这个你自己设置浏览器禁用js罗。。这个没办法。。 要么你试试将内容放到一个隐藏的textarea容器里面,这样是不会执行的js脚本的,然后用js替换掉script标签后在设置容器的innerHTML显示内容
YuFS 2014-05-27
  • 打赏
  • 举报
回复
引用 3 楼 vincentguo_ 的回复:
推荐你用下 Firefox 然后搜索 xss 相关插件,我记得有一个很好使,自带常用的攻击字符串,还会自动尝试攻击
不能区分浏览器,web页面要在浏览器中通用
YuFS 2014-05-27
  • 打赏
  • 举报
回复
引用 1 楼 zy205817 的回复:
正则匹配html标签替换掉
1楼2楼,我不想替换,想要保留,只是不执行script语句。至少尝试innerTEXT或者jquery的text可以有效不执行的,只是我的html很多,没有办法一个一个的处理,想找指量有效方法。等待高手
vincentguo_ 2014-05-27
  • 打赏
  • 举报
回复
推荐你用下 Firefox 然后搜索 xss 相关插件,我记得有一个很好使,自带常用的攻击字符串,还会自动尝试攻击
Go 旅城通票 2014-05-27
  • 打赏
  • 举报
回复
将<>替换为<>
码无边 2014-05-27
  • 打赏
  • 举报
回复
正则匹配html标签替换掉
zyaocccc 2014-05-27
  • 打赏
  • 举报
回复

//是要这个效果么,不行我再改
<!DOCTYPE html>
<html>
<body> 

<script>
function myFunction()
{
  var tr = document.getElementsByTagName("td");
  var str ="";
  for(var i=0;i<tr.length;i++){
    str+="<td>"+tr[i].innerHTML+"<script>alert('XSS td')</script></td>";
  }
document.write(str);
}
</script>
<table>
<tr>
<td>
1
</td>
<td>

2
</td>
<td>
3
</td>
<td>
4
</td>
</tr>
</table>

<button type="button" onclick="myFunction()">点击这里</button>

</body>
</html>
Mr_ggx 2014-05-27
  • 打赏
  • 举报
回复
输出的时候 直接把他转义掉就行了 ,另外如果是手机版的web页面 可以在Js里面自己写一个 字符解析函数 然后包装所有你要现实的信息 输出 就不会出现 这样的问题了

87,901

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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