XSS-Reflected反射型
把用户输入的数据反射给浏览器,诱使用户点击一个恶意链接,才能攻击成功。
一、各等级漏洞分析及利用
Low等级,没做任何过滤
直接弹
- medium等级,过滤掉
<script>,用空替换掉
大小写、过滤规则漏洞利用,使用其他标签
- high等级,匹配一些
<script>的关键字符,进一步过滤<script>
使用其他标签弹
- impossible等级,使用
htmlspecialchars函数进行html实体转义
无法利用xss漏洞
XSS-Stored存储型
存储型XSS是将恶意代码存储到服务器中,当用户点击该页面时候,会受到攻击
一、各等级漏洞分析及利用
1、low等级
- trim()是指移除字符两边的空白字符和一些特定字符
- mysqli_real_escape_string对一些sql语句中的特殊字符进行转义
- stripslashes()是删除字符串中的反斜杠
- 对xss方面没有任何过滤
直接弹
2、medium等级
- addslashes对单引号等添加反斜杠,strip_tags去除HTML、XML以及PHP标签,htmlspecialchars将message转义为html实体,不能执行脚本,message无法执行实现XSS攻击。
- name只是简单的对
<script>进行黑名单过滤,可以绕过
弹法,同前
3、high等级
- message不能弹
- name,使用正则来进行黑名单过滤
弹法,同前
4、impossible等级
- 将message和name都进行了过滤标签,转义,使用htmlspecialchars转换成html实体,从而防止了XSS攻击。