XSS Chanllenges

XSS Chanllenges 是一个XSS的练习平台,可以借助这个平台练习各种绕过,以及手工进行XSS的学习

平台链接:https://xss-quiz.int21h.jp/

Stage #1

我们打开平台的网址链接,可以看到第一关的界面

首先,我们测试注入点,插入测试代码</xss>,查看源代码找到输出点

很明显并没有其他过滤,那我们根据它上面的提示直接构建过关代码 <script>alert(document.domain);</script> ,这里它所提示的代码alert(document.domain);作用是利用HTML document对象中的domain属性用于返回当前文档的域名

当然我们也得到了下一关的入口,此时我们不妨再次查看源代码

可以看到的攻击代码已经成功的写入源代码中,并成功执行

Stage #2

来到第二关,我们依旧先测试</xss>,并查找输出点

我们可以看到我们的代码输出在input 标签里面了,所以我们这次要先闭合标签,构造代码 "/><script>alert(document.domain);</script>

弹出域名,得到下一关的入口

那么这个时候我们再次查看源代码,可以看到闭合input 后,我们的代码成功写入源代码,并成功执行

Stage #3

第三关中我们发现这次的输入点有两个,所以我们要找到能用的那个注入点

照例我们还是先代码测试,查看源代码

我们发现尖括号被过滤,所以选择第二个输入点进行注入,因为第二个输入点是一个单选框,所以我们需要借助抓包来完成攻击,这里使用Burp Suite 来完成

借助Burp Suite 在p2上构造代码 <script>alert(document.domain);</script>

最终得到下一关入口

ヒ ひCtrl

左键

Stage #4

第四关从前端界面上发现也是两个输入点,我们先对第一个输入点进行测试,输入</xss>,并查看源代码

发现存在过滤,接下来我们借助Burp Suite 对第二个输入点进行测试

通过查看源代码我们发现这里仍然存在过滤,但是我们通过抓包,发现了另外一个隐藏的输入点p3

尝试在这个输入点上插入代码 "/><script>alert(document.domain);</script>

成功获得下一关的入口链接

Stage #5

第五关输入点只有一个Search ,所以我们照例进行</xss> 测试

通过查看源代码,我们发现虽然不存在其他过滤,但是却存在字符长度限制,所以这里我们借助工具Firebug 修改属性值maxlength

然后再借助Firebug 修改value 的值为我们所构造的JS 代码 "/><script>alert(document.domain);</script>

下一关的链接也就显示在我们面前了

ヒ ひCtrl

左键

XSS Chanllenges 1-5的更多相关文章

  1. XSS Chanllenges 16-19

    Stage #16 同样为DOM 型XSS ,document.write() 方法 插入代码 \x3cscript\x3ealert(document.domain)\x3c/script\x3e ...

  2. XSS Chanllenges 11-15

    Stage #11 根据提示,发现正则匹配,过滤掉了很多关键字 除on 事件和script 事件外,能执行js 代码的还有a 标签构造的超链接 构造 "><a href=java ...

  3. XSS Chanllenges 6-10

    Stage #6 测试代码</xss> 存在过滤,并且也没有其他输入点,尝试构建" onmousemove="alert(document.domain),并查看源代码 ...

  4. 防御XSS攻击-encode用户输入内容的重要性

    一.开场先科普下XSS 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶 ...

  5. XSS

    XSS的含义 XSS(Cross Site Scripting)即跨站脚本.跨站的主要内容是在脚本上. 跨站脚本 跨站脚本的跨,体现了浏览器的特性,可以跨域.所以也就给远程代码或者第三方域上的代码提供 ...

  6. 【XSS】延长 XSS 生命期

    XSS 的本质仍是一段脚本.和其他文档元素一样,页面关了一切都销毁.除非能将脚本蔓延到页面以外的地方,那样才能获得更长的生命力. 庆幸的是,从 DOM 诞生的那一天起,就已为我们准备了这个特殊的功能, ...

  7. 探索ASP.NET MVC5系列之~~~2.视图篇(上)---包含XSS防御和异步分部视图的处理

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  8. XSS分析及预防

    XSS(Cross Site Scripting),又称跨站脚本,XSS的重点不在于跨站点,而是在于脚本的执行.在WEB前端应用日益发展的今天,XSS漏洞尤其容易被开发人员忽视,最终可能造成对个人信息 ...

  9. 个人网站对xss跨站脚本攻击(重点是富文本编辑器情况)和sql注入攻击的防范

    昨天本博客受到了xss跨站脚本注入攻击,3分钟攻陷--其实攻击者进攻的手法很简单,没啥技术含量.只能感叹自己之前竟然完全没防范. 这是数据库里留下的一些记录.最后那人弄了一个无限循环弹出框的脚本,估计 ...

随机推荐

  1. 转载 - kmp next函数 kmp的周期问题,深入了解kmp中next的原理

    出处:http://www.cnblogs.com/wuyiqi/archive/2012/01/06/2314078.html kmp next函数 kmp的周期问题,深入了解kmp中next的原理 ...

  2. POJ 2029

    二维树状数组可解此题 #include <iostream> #include <cstdio> #include <cstring> #include <a ...

  3. POJ 1155

    很久以前做的树形DP题,今天再遇到时,竟然不会了,所以写写.. 设数组: prf[MAX][MAX],cost[MAX],sum[MAX].分别表示,在第i个结点为根的子树内的情况下,若有j个用户申请 ...

  4. 跟我学Java多线程——线程池与堵塞队列

    前言 上一篇文章中我们将ThreadPoolExecutor进行了深入的学习和介绍,实际上我们在项目中应用的时候非常少有直接应用ThreadPoolExecutor来创建线程池的.在jdk的api中有 ...

  5. 【iOS开发系列】九宫格布局

    /** * 这个尽管非常easy,算是一个小技巧,可是碰到了就记录下来吧.积跬步,致千里嘛. */ - (void)scratchableLatex { for (int i=0; i<9; i ...

  6. linux程序设计——多线程(第十二章)

    12.8    多线程 之前,总是让程序的主线程只创建一个线程.这节将演示怎样在同一个程序中创建多个线程,然后怎样以不同于其启动顺序将它们合并在一起.此外,还演示多线程编程时easy出现的时序问题. ...

  7. oralce sql 创建指定时间段内的日历信息

    -- Create table create table TEMP_CALENDAR (   MONTH VARCHAR2(6),   W_7   VARCHAR2(2),   W_1   VARCH ...

  8. CentOS安装、配置APR和tomcat-native

    APR:Apache Portable Run-time libraries,Apache可移植执行库 在早期的Apache版本号中.应用程序本身必须可以处理各种详细操作系统平台的细节,并针对不同的平 ...

  9. [SCOI 2003] 字符串折叠

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1090 [算法] 区间DP [代码] #include<bits/stdc++. ...

  10. 【BZOJ2806】【CTSC2012】Cheat 广义后缀自动机+二分+Dp

    题目 题目在这里 思路&做法 我们先对标准作文库建广义后缀自动机. 然后对于每一篇阿米巴的作文, 我们首先把放到广义后缀自动机跑一遍, 对于每一个位置, 记录公共子串的长度\((\)即代码和下 ...