XSSLabs Less1-10

Xsslabs下载地址:

https://github.com/do0dl3/xss-labs

Less-1--常规插入语句

XSSLabs Less1-10_第1张图片

 

把test的值改成跨站脚本语句即可name=

XSSLabs Less1-10_第2张图片

 Less-2--”>闭合前面的语句

没有找到和".htmlspecialchars($str)."相关的结果.".'
'; ?>

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体

&(和号) 成为&

" (双引号) 成为 "

' (单引号) 成为 '

< (小于) 成为 <

> (大于) 成为 >

同样在keyword后插入语句

XSSLabs Less1-10_第3张图片

 选中右键查看元素,发现两个语句

XSSLabs Less1-10_第4张图片

 使用”>闭合前面的语句

在keyword修改js语句为 “>

XSSLabs Less1-10_第5张图片

 

Less-3----HTML onclick 事件

采取第二关做法,点击发现单引号引用

XSSLabs Less1-10_第6张图片

 

 改为’发现过滤

XSSLabs Less1-10_第7张图片

 

同样在from表单中 ,鼠标点击搜索按钮可以触发HTML onclick 事件属性

当单击鼠标时运行脚本:

XSSLabs Less1-10_第8张图片

 闭合前后两边的单引号,构造payload:  ‘ οnclick=alert(1) ‘  

XSSLabs Less1-10_第9张图片 

Less-4--闭合引号

与第三关相同,闭合掉两边双引号就可以了

payload: " οnclick="alert(1)" "

Less-5--超链接

采用第四关做法发现onclick变成o_nclick

 过滤代码如下:

$str2=str_replace("

$str3=str_replace("on","o_n",$str2);

方法一:去掉_

 方法二:采用超链接

 payload: ">yy

XSSLabs Less1-10_第10张图片

 点击yy成功

Less-6--大小写绕过

方法一:使用第四关语句" οnclick=alert(1) "发现

 直接点击修改,简单粗暴,但只能本次有效,实战意义不大

XSSLabs Less1-10_第11张图片

方法二:大小写绕过

过滤代码:

$str2=str_replace("

点击事件payload:  " ONclick=alert(1) "

超链接payload: ">yy

Less-7--双写href,script关键字

XSSLabs Less1-10_第12张图片

 将href过滤为空,script过滤为空

过滤代码: srt_replace为一次过滤

XSSLabs Less1-10_第13张图片

方法:双写href,script

payload:  ">yy

点击yy按钮成功

Less-8----javascript文本转换

添加链接只需输入href即可,输入javascript:alert(1)

得到

XSSLabs Less1-10_第14张图片

 利用supersoft进行文本转换

XSSLabs Less1-10_第15张图片

payload: javascript:alert(1) (需要文本编码)

Less-9----注释http://

使用8的解码看到

 过滤代码 必须有http:// 否则过滤

XSSLabs Less1-10_第16张图片

 http前的//是为了注释掉http://

payload: javascript:alert(1)//http://       (需要文本编码)

Less-10--多标签突破

XSSLabs Less1-10_第17张图片

这里有三个  标签隐藏,也就意味着是三个参数看看哪一个标签能够被突破

payload: &t_sort="type="text" οnclick="alert(1)"

t_sort              为参数

type="text"         为添加点击类型为text

οnclick="alert(1)"  为鼠标点击事件

通过构造参数响应发现只有t_sort里面的值被改变了。因此可以从该标签进行突破

XSSLabs Less1-10_第18张图片

XSSLabs Less1-10_第19张图片 

 

你可能感兴趣的:(XSSLabs,servlet,java,html,网络安全,前端)