xss跨站脚本攻击及防范

几天倩,我写了一个博客网站中有个评论功能。给别人玩的时候,在我的评论中输入了一段脚本代码,使我每次打开那个网页,就崩溃!百度了才知道是xss攻击!

什么是xss跨站脚本攻击

xss(Cross-site Scriping)
跨站:跨网站、域名
一个带有留言评论功能的网站,可以让用户留言。在正常使用留言时,都是没有问题的。
但是设想如果有人在评论留言区输入以下代码时呢?

<script>
	alert("xss攻击成功!");
</script>

用户点击发表评论,则写入数据库,当下次网页加载,从数据库读出该用户评论的内容时,网页则自动执行了这段脚本内容,网页上将会弹框显示:xss攻击成功!并且是每次读取这段内容都会执行!
那么如果不是输入的弹框,而是一下代码呢?

<script>
	location.href = "https://www.csdn.net/";
</script>

那么,当下次加载网页读取评论内容是,自动执行这段脚本代码,从而跳转到CSDN网站!

常用的XSS攻击手段和目的有:
1、盗用cookie,获取敏感信息。
2、利用植入Flash,通过crossdomain权限设置进一步获取更高权限;或者利用Java等得到类似的操作。
3、利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作。
4、利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。
5、在访问量极大的一些页面上的XSS可以攻击一些小型网站,实现DDoS攻击的效果。

防范措施

  1. 在用户提交时,对提交的内容进行过滤,直接不让用户提交恶意代码到数据库。
  2. 在写入数据库前、或者是在将查到的数据放到网页上前,将’<’、’>'等利用html中的实体符号进行转换

html实体符号:

显示符号 实体名称
< & lt;
> & gt;
发布了40 篇原创文章 · 获赞 16 · 访问量 8658

猜你喜欢

转载自blog.csdn.net/qq_40366738/article/details/100849924