XSS漏洞实验

实验来源于:Pikachu漏洞平台教学视频

一、反射型xss(get)

在这里插入图片描述
将maxlength的值调大
在输入框中< script> alert(/xss/) < /script>
提交,显示弹框


二、反射性xss(post)

在这里插入图片描述
打开后需要登录,由暴力破解实验可知账号密码,登录
在这里插入图片描述
和上个实验内容一样,输入框内输入< script> alert(/xss/) < /script>提交会有弹框

GET和POST的区别是:
GET是以url方式提交数据而POST是以表单方式在请求体里面提交
即在上一个实验中,可以通过URL来改变参数利用xss漏洞,而在这个实验中不可以


三、存储型xss

在这里插入图片描述
与前两个实验不同的是,这个为存储型XSS
之前为一次性的反射型XSS,而这个写进了数据库
与之前相比,这个会造成一个持久性伤害
每次打开页面弹窗都会出现


四、DOM型xss

在这里插入图片描述
查看源码可知
点击提交按钮时会触发onclick事件,执行domxss()函数
通过document.getElementById()函数获取输入框内内容
显示到页面

只要将 < a href=" "> < /a >标签造成闭合即可
可以按照源码中注释掉的代码,也可以使用 javascript:alert(/xss/)


五、DOM型xss-x

在这里插入图片描述
这个实验也是构成一个闭合即可
与上一个有所不同的是,这个可以在URL处修改参数


六、xss盲打

在这个实验中,填写表格内容后,出现如下提示
在这里插入图片描述
我们并不能看到内容,只有后台管理员登录才能看到
按照提示,进入后台管理员页面
在这里插入图片描述
管理员一登陆出现弹窗


七、xss之过滤

在输入框中输入< script >alert(‘xss’)< /script >
查看源码,发现输出在p标签中,但是script不见了
很有可能是做了一个过滤把script过滤掉了
在这里插入图片描述
于是,再次输入< script>alert(‘xss’)< /script>
但有所不同的是修改大小写,例如:
< Script>alert(‘xss’)< /scrIpt>
在此尝试,弹窗出现

后又尝试输入
< a href=“javascript:alert(/xss/)”>click me< /a>
发现也不能出现超链接,应该是同样过滤掉了href
于是我改成了hReF,弹框出现


八、xss之htmlspecialchars

首先
htmlspecialchars() 函数把预定义的字符转换为 HTML 实体。
具体的在这里

预定义的字符是:
" & "成为&amp
" “ " 成为&quot
" ‘ " 成为&#039
" < "成为&lt
" > "成为&gt

可用的引号类型:

ENT_COMPAT - 默认。仅编码双引号
ENT_QUOTES - 编码双引号和单引号
ENT_NOQUOTES -不编码任何引号

来看实验
输入’"<>script后提交
在这里插入图片描述
查看源代码
在这里插入图片描述
由图可以看出"和<以及>,这三个符号虽然能在页面显示,但在代码中却不是
不过可以看出,单引号符号仍可使用

尝试输入javascript:alert(/xs/),提交
在这里插入图片描述

九、xss之href输出

随便输入一串,查看源码
发现输入的字符串是在href中的
可以利用javascript:alert(/xxs/)完成弹窗输出
在这里插入图片描述

十、xss之js输出

先随便输入一串字符串
查看源码发现,输入被动态的生成到了javascript中
在这里插入图片描述
可以输入
’< /script>< script>alert(111)< /script>
提交,弹窗出现
在这里插入图片描述

                          雪碧可乐_2020/4/19_18:03
发布了5 篇原创文章 · 获赞 0 · 访问量 59

猜你喜欢

转载自blog.csdn.net/weixin_44940180/article/details/105617335
今日推荐