pikachu靶场 Cross-Site Scripting

目录

反射型xss(get)

反射型xss(post)

存储型

DOM型xss

DOM型xss-x

xss之盲打

xss之过滤

xss之htmlspecialchars

xss之href输出

xss之js输出


反射型xss(get)

输入特殊字符测试,看看有没有过滤,没有

pikachu靶场 Cross-Site Scripting_第1张图片

输入经典payload测试,输入失败,长度被限制,进url栏里输入,或者修改前端长度限制再输入,成功

pikachu靶场 Cross-Site Scripting_第2张图片

反射型xss(post)

这关需要登录后才能测试,url栏没法利用,但是输入框长度足够

pikachu靶场 Cross-Site Scripting_第3张图片

输入经典payload测试,成功

pikachu靶场 Cross-Site Scripting_第4张图片

存储型

输入特殊字符测试,输入payload测试,成功

pikachu靶场 Cross-Site Scripting_第5张图片

pikachu靶场 Cross-Site Scripting_第6张图片

DOM型xss

输入测试字符,提交,点击url,报错,不存在该url

pikachu靶场 Cross-Site Scripting_第7张图片

起初我以为靶场出了什么问题,后来查看源码发现,链接是根据输入内容而生成的,也许要借这个生成内容来xss(源码给了提示)

pikachu靶场 Cross-Site Scripting_第8张图片

再次输入测试字符,查看在代码中的存在形式

pikachu靶场 Cross-Site Scripting_第9张图片

不断测试后得出该payload能用,大体就是要构造闭合,使输入的代码能正常运行

pikachu靶场 Cross-Site Scripting_第10张图片

DOM型xss-x

和上一关的流程差不多,多了一个传参的过程,一样是测试注入点

pikachu靶场 Cross-Site Scripting_第11张图片

得出可以构造闭合的结论,把上一关的payload拿过来试试,成功

pikachu靶场 Cross-Site Scripting_第12张图片

xss之盲打

这一关前端不会回显,输入的内容只会在后台运行,只有管理员才能看到,输入payload后在url栏里把当前页面改为admin_login.php,输入admin和123456后登录,可以看见xss成功运行,payload无论是看法栏还是名称栏都能运行

pikachu靶场 Cross-Site Scripting_第13张图片

xss之过滤

大写script绕过,或者使用img标签payload

pikachu靶场 Cross-Site Scripting_第14张图片

pikachu靶场 Cross-Site Scripting_第15张图片

xss之htmlspecialchars

测试特殊字符,发现都被转义了,但是单引号和冒号没有被转义

pikachu靶场 Cross-Site Scripting_第16张图片

使用带冒号的payload测试

pikachu靶场 Cross-Site Scripting_第17张图片

使用带单引号的payload测试

pikachu靶场 Cross-Site Scripting_第18张图片

xss之href输出

测试特殊字符和标签闭合类型

pikachu靶场 Cross-Site Scripting_第19张图片

直接输入payload并点击

pikachu靶场 Cross-Site Scripting_第20张图片

看看放空和输入百度域名,作者说咱很任性,作者说他对百度印象不是很好

pikachu靶场 Cross-Site Scripting_第21张图片

pikachu靶场 Cross-Site Scripting_第22张图片

xss之js输出

输入正常内容测试,发现在script标签内

pikachu靶场 Cross-Site Scripting_第23张图片

闭合前面的,成功

pikachu靶场 Cross-Site Scripting_第24张图片

你可能感兴趣的:(靶场,web安全)