XSS漏洞原理及防护

xss 注入。

起因是网站对上传内容过滤不严格。导致上传内容,脚本或其他执行的情况。
分类:
1.反射性XSS;
2.存储型XSS;
3.DOM型XSS;
XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。
XSS是一种发生在前端浏览器端的漏洞,所以其危害的对象也是前端用户。
形成XSS漏洞的主要原因是程序对输入和输出没有做合适的处理,导致“精心构造”的字符输出在前端时被浏览器当作有效代码解析执行从而产生危害。
因此在XSS漏洞的防范上,一般会采用“对输入进行过滤”和“输出进行转义”的方式进行处理:

  输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;
  输出转义:根据输出点的位置对输出到前端的内容进行适当转义;

基本测试方法
1.寻找输出点,可上传的位置。 web抓包工具brupsuite 抓包寻找输出点
2.测试输出位置,正常测试,盲打后台的类型(让管理员运行)。
3.测试基本跨站代码。弹窗 测试,测试如下:
XSS漏洞原理及防护_第1张图片
对于基本的测试就是上面这种,说明存在xss漏洞,很多网站有许多的手段使代码失效,下面介绍基本的几种测试方式。
1. 存在闭合标签,


构造来使闭合标签失效,如:<textarea>"输入内容"</textarea>,使其失
效,构造,</textarea><script>alert(/xss/)</script>,最前面的</textarea>
用于闭合前面的<textarea>富文本标签。

2.大小写混合测试

如黑名单过滤( if('ontouchstart' in document.documentElement) document.write("
                    
                    

你可能感兴趣的:(web安全,xss,javascript,php)