XSS(跨站脚本)概述
Posted 7-58
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XSS(跨站脚本)概述相关的知识,希望对你有一定的参考价值。
XSS(跨站脚本)概述
Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS。一般XSS可以分为如下几种常见类型:
1.反射性XSS;
2.存储型XSS;
3.DOM型XSS;
XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。
XSS是一种发生在前端浏览器端的漏洞,所以其危害的对象也是前端用户。
形成XSS漏洞的主要原因是程序对输入和输出没有做合适的处理,导致“精心构造”的字符输出在前端时被浏览器当作有效代码解析执行从而产生危害。
因此在XSS漏洞的防范上,一般会采用“对输入进行过滤”和“输出进行转义”的方式进行处理:
输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;
输出转义:根据输出点的位置对输出到前端的内容进行适当转义;
Pikachu平台从下面几个方面进行
跨站脚本漏洞的测试流程:
- 在目标站点上找到输入点,比如查询接口,留言板等
- 输入一组“特殊字符(单引号,双引号,尖括号等)+唯一识别字符(字母数字组合)”,点击提交后,查看返回的源码,是否有对应的处理
- 通过搜索定位到唯一识别字符,结合唯一识别字符的前后语法确认是否可以构造执行js的条件(即构造闭合)
- 提交构造的脚本代码(以及各种绕过姿势),看是否成功执行,如果成功执行说明存在xss漏洞
注意点:1>一般查询接口容易出现反射性xss,留言板容易出现存储型xss
2>后台可能存在过滤措施,构造的script可能被过滤而无法生效 或者
浏览器环境限制了执行
3>通过变化不同的script,尝试绕过后台过滤机制
以上是关于XSS(跨站脚本)概述的主要内容,如果未能解决你的问题,请参考以下文章