xss-labs level 5

xss-labs level 5

1.懒得废话了,直接看源码2.发现是对输出做了过滤,<script 和 on 会被插个下划线在中间,由于使用了strtolower()函数把所有字母转为小写,所以没法大小写绕过,但是javascript没有被限制,所以我们可以利用javascript伪协议把 javascript恶意代码植入到新建的一个标签内。比如a标签:"><a href=javascript:alert('XSS')>click here !</a>使用不同的标签可以实现不同的功能,比如我这里的a标签是生成一个超链接当点击蓝色字体(超链接)时,会执行我们的恶意代码,如果是个url会直接跳转到url地...

xss-labs 2020-03-11 PM 258℃ 3条
xss-labs level 4

xss-labs level 4

1.这题依然是<input>标签跟<h2>标签输出内容查看源码,发现<h2>标签那里依旧是使用htmlspecialchars()进行一个转码,最然我们前面说过了这能绕过,但在<h2>标签内添加的属性有限,不能进行有价值的操作。而 input 标签进行了str_replace()替换的操作,把尖括号替换成了空,相当于过滤掉了。那既然只是过滤了尖括号,我们可以像上一关一样给标签添加属性进行执行javascript操作,payload:" onclick=javascript:alert('xss') "提交后成功插入进去当点击搜索框触发时间时,事件代码就会被执行

xss-labs 2020-03-11 PM 238℃ 3条
xss-labs level 3

xss-labs level 3

1.这题的界面跟上一题差不多,都是有两处疑似xss插入点查看源码,两处都使用htmlspecialchars()函数特殊符号转为了html实体,也就是说我们没办法进行闭合标签,插入javascript代码。2.那这怎么绕过呢?其实htmlspecialchars()默认是不编码单引号的,那我们既然没法闭合标签,就在标签内部进行一个添加属性,使其弹窗payload:' onfocus=javascript:alert('XSS') '当我们提交的时候,发现搜索框内没东西,查看源码,我们的恶意代码已经插进去了,但是此时并没有执行弹窗,因为我们使用的是 onfocus事件。当我点击搜索框时,事...

xss-labs 2020-03-11 PM 278℃ 4条
xss-labs level 2

xss-labs level 2

1.这次是通过输入框输入数据,但依旧不影响他是个反射型XSS页面中有两个位置显示输入的数据,也就是说可能存在两个XSS注入点2.查看源码分析可以看到搜索框上面的标题对输出进行了过滤,会把输入的特殊字符转换为html实体,关于 htmlspecialchars()。所以我们不在这下手3.那我们就对搜索框进行操作,先查看前端源码这是属性内输出,很显然这里直接插入javascript代码是不行的,因为会被当成文本所以这里我们就要用到跟之前sql注入时类似的闭合绕过,闭合前面的标签,从而成功逃逸标签的属性束缚4.具体怎么做呢? 那就是输入以下payload"><script>alert('...

xss-labs 2020-03-11 PM 246℃ 3条
XSS-labs level1

XSS-labs level1

1.先看下主界面很明显就是get一个name,然后echo出来2.查看源码可以看到没有进行任何的过滤3.显然存在反射型的XSS漏洞,那么我们直接构造一个javascript弹窗<script>alert('XSS')</script>由于后端的限制没有直接弹出 XSS 这个我们设置的窗,但提示过关证明我们插入的XSS恶意代码已经执行。点击确定会进去下一关

xss-labs 2020-03-11 AM 250℃ 4条
网站备案号:桂ICP备19011556号-1