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

get方式的的值直接输出来了。
?name=<script>alert(1)</script>
2.

同样没有过滤,不过需要闭合前边的双引号和>。
"><script>alert(1)</script>
3.


用htmlspecialchar函数对输入的值做了一个过滤。这个函数过滤 < > " & '但是他这个也存在过滤方法
w3c上的。很明显,他这里没有加ENT_QUOTES,是默认的形式,所以不过滤单引号。另外绕过<>的过滤,就用onXX事件,这里我用onclick。
' onclick=alert(1)//
4.

只是过滤了<>,比上一关还简单 。
" onclick=alert(1)//
5.

<script过滤为<scr_ipt,on过滤为o_n,我们可以考虑javascript伪协议。过滤的是<script,script是不会被过滤的。
"><a href=javascript:alert(1)>111</a>
6.

过滤了<script,on,src,data,href。看起来是没有办法,但是他这里忘了对get方式得到的keyword的值进行小写的函数,所以,大小写绕过。
" oNclick=alert(1)//
7.

仔细观察过滤的函数,与前边过滤不用的是,他是把敏感的字符替换为空,而且是替换一次。 双写绕过。
"><a hrhrefef=javascrscriptipt:alert(1)>111</a>
注意观察href和script哦。
8.

href都给你写好了。直接javascript,但是要注意script这里过滤了,但是javascript可以进行html编码,注意不能是url编码哟,这样url解析器会识别不出来什么协议。还有就是对script之间的一个或多个单词编码。
javascript:alert(1)
9.

和上一关基本一样,可是你输入中必须有http://,直接把这个http://写这是后边。这样,http://不但出现在了你输入的字符串里,而且被注释掉了不起任何作用。
javascript:alert(1)//http://
10.

他这里有两个get可以得到的参数的值,keyword可以得到,但是代码中并没有有关keyword得到的值的输出。看代码,还可以用t_sort得到值,我们可以构造script的方式来让他产生弹框。构造:"><script>alert(1)<script><" (注意前后的闭合) 。但是这里过滤掉了<>,所有考虑onclick事件,值得注意的是:input的type属性不是text,而是hidden,这意味我们不能通过点击输入框来让他弹框。所以我们还有加一条type="text",然后注释掉type=hiden。
t_sort=" onclick=alert(1) type=text//
11.

和上一题一个思路,只不过注入点到了http_reference,抓包,修改Referer的值
Referer: " onclick=alert(1) type=text//
12.

抓包修改user-angent的值
User-Agent:" onclick=alert(1) type=text//
13.
抓包修改cookie的值,user=不要删除了哟

Cookie: user=" onclick=alert(1) type=text//
14.
没看懂。。。
15.
也不会
16.

过滤了空格,script,/。我们可以想到用回车或者换行的html编码来绕过。%0a,%0d。
这里讲一下为什么要过滤/,因为他不想让你用必须闭合的标签。比如<a href></a>,这里过滤/这种就不能用了。但是我根据写html的经验,<a>位于<center></center>中,就算没有</a>他也能够创造链接(这里不影响到其他的内容),并且成功执行。这里,我就偏用<a href>.
然后我对javascript的某个字符编码,从而绕过script的过滤。对R编码。->r->%26%23x72%3B
为什么要进行编码?&#都比较特殊,一开始浏览器不会对他进行编码,而#有截断的功能,所以浏览器压根收不到后边的内容,但实现进行url编码,浏览器要先显示这些字符的时候url解码,就完美地还原出&#这符号了,你看第八关为什么可以直接r;我也不是很清楚,做了个小实验:

输入H;get方式那里会自动给他编码,可能提交的方式,或者其他的形式不同吧。
?keyword=<a%0Ahref=javasc%26%23%78%37%32%3Bipt:alert(1)>a
下载链接:https://files.cnblogs.com/files/Eleven-Liu/xss练习小游戏.zip
xss games20关小游戏附源代码的更多相关文章
- Kinect+unity 实现体感格斗闯关小游戏
文章目录 项目地址 1 项目概况 1.1 项目简介 1.2 项目目的 1.3 主要技术 2 设计 2.1 基本概念 2.2 框架 2.3 算法 2.4 模型 2.5 调查问卷 3 实现 3.1 技术难 ...
- 【CTF】某xss练手小游戏
http://test.xss.tv 1.http://47.94.13.75/test/level1.php?name=test 直接插入即可,如: http://47.94.13.75/test/ ...
- XSS挑战之旅---游戏通关攻略
最近发现一个有趣的XSS闯关小游戏,游戏的作者是先知社区的大佬Mramydnei,喜欢XSS的大家可以一起来学习交流. 现在我把自己在前面的十八关里面的闯关过程记录一下,大神绕行,我是菜鸟,大家可以一 ...
- 用图像识别玩Chrome断网小游戏
先来看一下效果 正文 最近在学习机器学习方面的知识,想着做个东西玩玩,然后就接触到了TensorFlow这个机器学习框架,这个框架封装了机器学习的一些常用算法. 不过要自己实现一套流程还是比较麻烦,我 ...
- 扫雷小游戏PyQt5开发【附源代码】
也没啥可介绍哒,扫雷大家都玩过. 雷的分布算法也很简单,就是在雷地图(map:二维数组)中,随机放雷,然后这个雷的8个方位(上下左右.四个对角)的数字(非雷的标记.加一后不为雷的标记)都加一. 如何判 ...
- cocos2d-x开发的《派对小游戏》-github源代码分享
这是博主非常久曾经写的一个cocos2d-x跨平台小游戏,我称它为<派对小游戏>,如今分享给大家.希望对大家有所帮助的话. 项目源代码地址:https://github.com/xieba ...
- 推箱子小游戏《格鲁的实验室》13关 - bfs最短路径
下载了一款推箱子小游戏,第13关的时候怎么也破不了最佳纪录(最少步数是9而我们最好的方案是10步),因为数据比较小(6*8的方阵),所以写了个BFS来找最短路. 游戏的目标是把小黄人推到黄色球,小绿人 ...
- xss小游戏通关
xss url:http://test.ctf8.com/level1.php?name=test 小游戏payload: <script>alert("'test'" ...
- 通通的最后一篇博客(附自制html5平面射击小游戏一枚)
这是我最后一篇博客了,由于本人的人生规划吧,以后应该也写不出什么好的技术文章了,到现在在博客园写了2年, 今天一看,我也有了120个粉丝,好几万的浏览量,感谢大家的支持啊~~ 半年没有写博客了,由于半 ...
随机推荐
- lintcode中等难度5道题
1.整数转罗马数字 对任一个罗马数字可以 由12个罗马字符进行加法操作完成,且大数在左,小数在右,可以将一个数字进行拆分来求解 2.买卖股票的最佳时机 II 可将问题转换为只要相连的两天prices[ ...
- [转]C#中StreamReader读取中文出现乱码
摘自:C#中StreamReader读取中文出现乱码 原因是自Windows 2000之后的操作系统在文件处理时默认编码采用Unicode所以.NET文件的默认编码也是Unicode.除非另外指定,S ...
- gitlab用户添加ssh免密钥认证后clone还是要求输入密码
今天在centos 7公网服务器上安装gitlab在配置ssh免密钥时遇到一个奇怪的事,正确添加了本机的公钥到gitlab账户上,进行clone时死活都要你输入密码gitlab使用yum安装的,之前在 ...
- Unity结合Flask实现排行榜功能
业余做的小游戏,排行榜本来是用PlayerPrefs存储在本地,现在想将数据放在服务器上.因为功能很简单,就选择了小巧玲珑的Flask来实现. 闲话少叙.首先考虑URL的设计.排行榜无非是一堆分数sc ...
- [Rails学习之路]初识Ruby(一)
Ruby是一门动态的.强类型的.纯面向对象的编程语言.它和Python非常相似,但比Python面向对象更加彻底.使用更加灵活.语法更加复杂.也更为有趣. 抛开做事情到底应该有多少种方法这个问题,我相 ...
- IOS 响应者链条 and UIGestureRecognizer 手势识别器)
一次完整的触摸事件的传递响应的过程 UIAppliction --> UIWiondw -->递归找到最适合处理事件的控件 控件调用touches方法-->判断是否实现touches ...
- hdu-1068&&POJ1466 Girls and Boys---最大独立集
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1068 题目大意: 有n个人,一些人认识另外一些人,选取一个集合,使得集合里的每个人都互相不认识,求该 ...
- 【BZOJ3720】Gty的妹子树(主席树+时间分块)
点此看题面 大致题意: 给你一棵有根树,让你支持三种操作:询问某子树中大于\(x\)的值的个数,把某一节点值改成\(x\),添加一个父节点为\(u\).权值为\(x\)的节点. 关于此题做法 此题做法 ...
- 动态规划专题(二)——树形DP
前言 \(DP\)这东西真的是博大精深啊...... 简介 树形\(DP\),顾名思义,就是在树上操作的\(DP\),一般可以用\(f_i\)表示以编号为\(i\)的节点为根的子树中的最优解. 转移的 ...
- STM32启动流程
启动文件主要工作: . 设置堆栈指针SP=_initial_sp . 设置PC指针=Reset_Handler . 配置系统时钟 . 配置外部SRAM用于程序变量等数据存储(可选) . 调用C库中的_ ...