XSS分类&危害&防御

XSS(跨站脚本)漏洞是什么?

在网页中插入恶意的js脚本,由于网站没对其过滤,当用户浏览时,就会触发脚本,造成XSS攻击

XSS分类?

1.反射型 用户输入的注入代通过浏览器传入到服务器后,又被目标服务器反射回来,在浏览器中解析并执行。

2.存储型 用户输入的注入代码,通过浏览器传入到服务器后,被永久存放在目标服务器的数据库或文件中。当用户再次访问这个注入代码的页面就出发了xss漏洞

3.Dom型xss 它和反射型以及存储型xss的区别在于,dom型xss的代码并不需要服务器解析响应的直接参与,触发xss靠的是浏览器的dom解析,可以认为完全是客户端的事情。 

4.Flash型xss

XSS危害?

1.对于那些半年没有更新的小企业网站来说,发生XSS漏洞几乎没有什么用
2.劫持用户cookie是最常见的跨站攻击形式,通过在网页中写入并执行脚本执行文件,劫持用户浏览器,将用户当前使用的sessionID信息发送至攻击者控制的网站或服务器中。
3.挂马(水坑攻击)
4.有局限性的键盘记录
5.蠕虫

防御?

1.对前端输入做过滤和编码:

  • 比如只允许输入指定类型的字符,比如电话号格式,注册用户名限制等,输入检查需要在服务器端完成,在前端完成的限制是容易绕过的;
  • 对特殊字符进行过滤和转义;

2.对输出做过滤和编码:在变量值输出到前端的HTML时进行编码和转义;

3.给关键cookie使用http-only。

 

 

人生得意须尽 莫使金樽空对月
原文地址:https://www.cnblogs.com/puhk/p/10702904.html