XSS Challenges(1-12关)
XSS Challenges解析:
1.
什么过滤也没有,而且是直接输出。<scrip>alert(document.domain);</script>即可通过
2.
直接输入第一关不行,查看源代码:
<input type="text" name="p1" size="50" value="<scrip>alert(document.domain);</script>">
发现了这么一行代码,闭合语句试试,输入:"><script>alert(document.domain);</script>//
3.
大家仔细看这个题目,输入的地方有两处,只不过第二处只能从四个国家里面选择一个,但是通过burp抓包,我们可以解决。
先上来按照一般的思路,就直接在输入框里面输入:<script>alert(document.domain);</script>
我们查看源代码可以看到这个,

说明对我们直接输入的代码进行了过滤。但是看后边的这个USA,他是不是也过滤了呢,我们用burp抓个包。

将Japan的值直接修改为<script>alert(document.domain);</script>
发送,通过,USA并没有过滤。

4.
抓个包,发现提交三个参数。前两个肯定过滤了,不然给你第三个参数干啥。

发送后,看看源码。

真的是,第三个参数value没有过滤,只不过这个没有直接在页面上看出来。再发现就是闭合input就行了。构造:"><script>alert(document.domain);</script>//
5.
抓个包

原来是限制了长度,把3改成100,然后查看源代码,闭合input,和上边的一样。"><script>alert(document.domain);</script>//
6.
抓个包,发现只能提交一个参数。直接把上一贯关内容提交。

发现把<>都进行了编码。看一下hint。event handler attribute:事件处理程序。直接百度。


找到了我想要的答案。
这样正好绕开了<>的输入,构造:" onclick="alert(document.domain);"//
值得一提的是,这个onclick是点击输入框才会弹出来,而不是按钮哟。
7.
输入上一关的内容后,发现双引号被过滤。首先说一下,onclick,value,type这种="",其实可以不用存在双引号。
我们首先把alert()的双引号去掉。
构造:" onclick=alert(document.domain);//
在输入然后search,查看源代码

发现value就剩下一个编码后的双引号。what?我们现在只输入1看看
查看源代码

虽然不知道咋回事,但是我知道value引号不用闭合了。
构造1 onclick=alert(document.domain);// 查看源代码:

这个时候已经成功了,点那个输入框,通过。
8.
JavaScript伪协议,先直接输入javascript:alert(document.domain);。查看源代码:

什么也不用闭合,就这样就行了,然后点击页面的url,通过。
9.
发现 < > " 都被过滤了。
hint: utf-7编码,先源代码看一下怎么闭合。
" onclick=alert(document.domain)//
utf-7编码:
+AG8AbgBjAGwAaQBjAGsAPQBhAGwAZQByAHQAKABkAG8AYwB1AG0AZQBuAHQALgBkAG8AbQBhAGkAbgApAC8AL-
不行啊,百度xss utf-7,原理:没有指定编码,浏览器以utf-7编码来解析。
而且必须是IE7。都已经被修复的东西,而且IE7谁还用这老古董啊,就不继续研究6了。
过关方法:

百度的,真是会玩。
10.
随便输入,查看源码,闭合语句。search后,再次查看源码:

domain没了。看hint:s/domain//g;估计是正则表达式替换为了空字符串。如果没有循环替换,试一下双写绕过。domadomainin,这样他只替换一次,这个字符串就变成了domain。构造" onclick=alert(document.domdomainain);//过关.
11.
hint:"s/script/xscript/ig;" and "s/on[a-z]+=/onxxx=/ig;" and "s/style=/stxxx=/ig;"
script转化为xscript,onclick,onload之类转化为onxxx。
前边的都不能用了,不过还有个href。javascript那里虽然有script,但是可以用 制表符,回车符,换行符 来欺骗过滤器。

构造"><a href="javascr
ipt:alert(document.domain);">1<a>
12.
把\x00-\x20 < > " '都过滤掉了。
看别人的wp,
`在 IE下会被解析为引号,所以用这个闭合前边的value。
构造
`
onclick=alert(document.domain);`
XSS Challenges(1-12关)的更多相关文章
- XSS Challenges闯关笔记
前言 做xss做疯了再来一个. 地址:https://xss-quiz.int21h.jp/ ,这个貌似是日本的一个安全研究员yamagata21做的. 做到第九关就跪了,而总共有二十关.一半都还没有 ...
- XSS练习平台-XSS Challenges
XSS Challenges http://xss-quiz.int21h.jp/ XSS基础不好的建议优先查看 关于XSS中使用到的html编码 js编码各种场景用法 http://su.xmd ...
- XSS Challenges学习笔记 Stage#1~ Stage#19
开门见山 Stage #1 http://xss-quiz.int21h.jp/?sid=2a75ff06e0147586b7ceb0fe68ee443b86a6e7b9 这一道题发现我们写入的内容直 ...
- XSS Challenges 练习(1-10)
这几天对XSS Challenges平台进行了练习,网上也有一些相应的解答博客,但是写得都差不多,我觉得可以试一下从怎么做这种题的角度出发去思考问题. 第一题:http://xss-quiz.int2 ...
- xss challenges平台学习
虽然在很早之前就接触过xss,有一段时间还就着一本书研究过,但是始终没有实感,掌握的也不够系统,所以现在借着这几个平台再学习一遍 首先来玩一玩xss challenge平台 第一关:http://xs ...
- XSS Challenges练习及解答
一个偶然的机会在知道创宇的技能表里看到了一个练习XSS的网站http://xss-quiz.int21h.jp,正好想研究这个,于是试着做了一下. 第一.二题是最简单的,直接在搜索框中输入以下代码就成 ...
- XSS Challenges xss-quiz.int21h.jp
概述: https://xss-quiz.int21h.jp/ Stage #1 payload: <script>alert(document.domain);</script&g ...
- XSS challenges 1-10
学长发的xss靶场,刚好js学完了,上手整活. 这个提示说非常简单,直接插入就完事了 <script>alert(document.domain)</script> 第二关. ...
- XSS Challenges
平台: http://www.zixem.altervista.org/XSS/ level1: Payload: http://www.zixem.altervista.org/XSS/1.php? ...
随机推荐
- yii2 详细分解实现分页效果
1.首先,准备一个数据表,内容为: 然后建立一个控制器,比如我的例子中的是:PractiseController.php 接着,我们开始在控制器中输入内容: 从中我们可以看到,这是将表数据中,id为2 ...
- pat甲级1044二分查找
1044 Shopping in Mars(25 分) Shopping in Mars is quite a different experience. The Mars people pay by ...
- js 正则匹配(去掉html标签)
正则匹配去掉所有html标签 var a = "<span>999</span>" a = a.replace(/<[^>]+>/g,' ...
- Ajax的open方法
Ajax的open()方法有3个参数:1.method:2.url:3.boolean: 参数1有get和post两个取值 参数2是表单的action属性值 参数3:boolean的取值 当该bool ...
- hdu-1166 敌兵布阵---树状数组模板
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1166 题目大意: 维护动态的区间和,单点更新,就是模板题 #include<iostream& ...
- 让你不再害怕指针——C指针详解(经典,非常详细)
http://blog.csdn.net/soonfly/article/details/51131141 前言:复杂类型说明 要了解指针,多多少少会出现一些比较复杂的类型,所以我先介绍一下如何完全理 ...
- vuejs里面v-if,v-show和v-for
<div id='root'> <div v-if='show'>helle world</div> <button @click='handleClick' ...
- 【ML】聊天机器人
继做过了泰语分词,自动对对对联后对聊天机器人产生了浓厚的兴趣.ChatBot集合了NLP,DL等多领域的应用. https://deeppavlov.ai/ https://www.rasa.com/ ...
- css属性选择器=,~=,^=,$=,*=,|=
http://www.w3school.com.cn/css/css_selector_attribute.asp =. property和value必须完全一致 : ~=.“约等于”?: ^=. 从 ...
- PAT (Advanced Level) Practise - 1094. The Largest Generation (25)
http://www.patest.cn/contests/pat-a-practise/1094 A family hierarchy is usually presented by a pedig ...