XSS挑战之旅Level 1~4

Level1、

通过源文件是可以看出后台处理对输入的数据没有经过任何处理的,所以直接一个最简单的弹出就能过掉

 

 payload:name=<alert(1)</script>

 

 

Level2、

在源文件中能看到对输入的数据进行了htmlspecialchars()函数的处理,该函数的作用就是将预定义的字符'<'

和'>'转换为HTML实体,即使其不再以代码的形式写入

 

一种payload是把input里的引号闭合掉payload:keyword="><script>alert(1)</script>

 

另一种就是用js的事件,但是还是要注意闭合payload:keyword="onmouseover=alert(1)>

 

Level3、

 这里是在input里就进行了htmlspecialchars()函数的过滤,这样就不能使用<和>了,同时也是不能用>来闭合,所以可以用js事件并用//注释掉后面的内容

payload:keyword="onmouseover=alert(9)//

 

Level4、

 

 这里是把<和>用空代替掉了,并且加上了htmlspecialchars()函数的过滤,所以还是用js事件就能解决

payload1:"onmouse=alert(1)//

payload2:" onfocus=alert(1) autofocus="这里解释一下:onfocus事件——定义的事件将在对象获得焦点是触发,这里指input标签获得焦点;autofocus属性是input标签的属性,当页面加载input标签时自动获得焦点;这里的焦点是指鼠标光标的位置,即当光标出现在input文本框里时onfocus事件就会被触发

payload3:"onclick=alerrt(1)//这里是指当鼠标点击input文本框时触发弹窗事件

posted @ 2020-07-20 21:26  Mr.J&  阅读(139)  评论(0)    收藏  举报