在线靶场(http://xss.fbisb.com)

w

第一关

get请求,没有什么过滤,直接上<script>alert()</script>

源码:

第二关

输入参数会显示在文本框,直接看页面源码

发现对输入的参数<>进行了HTML实体化导致不能执行js,但是输入参数会显示在文本框并且没有经过处理

进行对input标签的闭合,使输入的js代码执行

源码

htmlspecialchars()函数是使用来把一些预定义的字符转换为HTML实体

被转换的预定义的字符有:

&:转换为&amp; ":转换为&quot;':转换为成为 '<:转换为&lt;>:转换为&gt;

第三关

和第二个差不多,直接上"><script>alert()</script>,但是发现没有像上一关一样

查看页面源码发现input文本框的值也被实体化了,注意这一关使用的是单引号

这时候该是考虑为协议的时候到了,onclick 当点击按钮时执行一段 JavaScript

不错,成功,输入成功文本框是空的。当我们点击他就会执行js代码

源码

第四关

输入敏感字体发现<>不见了,直接看页面源码

可以看到<>被过滤了,但是我们还有onclick,注意双引号了,这二货

完美

源码

第5关

上面是我输入的直接实体化,不用想了,拿来看还是不错的,文本框是服务器处理后的可以发现script被替换了,直接查源码

可以看出,script ,onclick 等都被替换了,不过<>"都没有,这个可以利用<a>标签

直接构造代码,注意闭合input,变成"><a href=javascript:alert()>123</a>,页面重新超链接,点击就会调用我们的js了

源码

第六关

经过前面的做题,我发现太慢了,直接在空格输入敏感词,这样方便多了,这不把我可爱的href也也替换了

我瞬间又想到了<img>,谁知道,又把src替换了

居然你有规则知道我输入非法参数,那我就试试绕过你的规则,大小写,复写,编码,这一题,复现肯定不合适,所有大小写咯,

源码

第七题

把我可爱的script替换了,这不这一天复现的机会来了

不错,

源码

第八关

输入敏感词,没反应直接看页面源码

也是script被替换了,试过大小写不行,那么只能是编码

把其中的p转换成16进制,

xss之挑战小靶场(1-10)的更多相关文章

  1. Xss Game挑战

    前言 最新学习了下xss的更深入的东西,学习了一波浏览器解析机制和XSS向量编码的知识. 这里就些xss的练习题巩固知识 学习的话结合如下两篇文章看,从例子和基础原理层面都有: http://boba ...

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

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

  3. Wordpress搭建社交型小游戏网站10大步骤

    http://www.aliyun.com/zixun/content/2_8_196141.html ———————————————————————————————————————————————— ...

  4. 【CTF】某xss练手小游戏

    http://test.xss.tv 1.http://47.94.13.75/test/level1.php?name=test 直接插入即可,如: http://47.94.13.75/test/ ...

  5. 先定一个小目标:10天自学C语言编程,教你如何改变一生

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

  6. 《java入门第一季》之有趣的集合小案例---获取10个【1-20之间】的随机数,要求不能重复。

    import java.util.ArrayList; import java.util.Random; /* * 获取10个[1-20之间]的随机数,要求不能重复.(注意:不是获取10个数,如果单纯 ...

  7. 探秘小程序(10):分享功能+webview

    场景: 小程序页面用webview嵌入了h5页面,h5页面需要与小程序进行交互,h5页面内容不同,分享的链接也不一样 分享功能: 小程序的分享功能即用户点击小程序右上角,转发功能页面.可以指定分享卡片 ...

  8. 趣味CSS3效果挑战小汇总

    众所周知,在CSS3中产生了诸多优秀的特性,现在就来分享一下我这段时间对于这些特性的效果实践,希望对大家有所启发. 挑战1: 画一个对话框 要画一个对话框,首先来学习做一个三角形.其实非常的简单. & ...

  9. 第九届极客大挑战——小帅的广告(二阶sql注入)

    也是经过一通扫描和测试,没发现其他有用信息,感觉这是个sql注入.其实对于二阶sql注入我以前没实践过,也没看过资料,只是知道这个名字,但不知道为何看到这道题就让我回想起了这个名词,所以查了一下二阶s ...

随机推荐

  1. 夜神模拟器怎么连接adb

    夜神模拟器连接不了adb的原因主要是adb的版本与夜神模拟器adb版本不一致造成的,具体的解决办法请看下面的操作步骤. 工具/原料   电脑 安装了夜神模拟器 方法/步骤   1 使用快捷键win + ...

  2. Linux帮助——获取帮助

    Linux帮助——获取帮助 摘要:本文主要学习了Linux众多命令中最基础的帮助命令. 介绍 作用 Linux的所有操作都可以通过命令行来完成,所以学习Linux最好从命令行开始.因为Linux的命令 ...

  3. vuex防止数据刷新数据刷掉

    replaceState replaceState(state: Object) 替换store的根状态,仅用状态合并或者时光旅行调试 // 在页面加载时读取localStorage里的状态信息 if ...

  4. Web点击链接调起手机系统自带短信发短信

    实现代码如下: 一.Html代码 <a href="javascript:;" class="xq-sms">发送短信</a> 二.jQ ...

  5. IOS plist文件

    转自:http://www.cnblogs.com/geraldzhang/archive/2011/08/24/2152121.html 在Mac OS X 的Cocoa ,NeXTSTEP 和GN ...

  6. 家电制造业中MES系统发挥的作用

    人们对MES系统在家电生产领域的应用并不陌生,这是离散型MES应用的一个重要领域. 如空调.冰箱.电视.洗衣机等生产加工中均具有批量制造.多品种小批量.单件生产的等特点,很多企业也是以以订单.合同为核 ...

  7. Android中获取实时网速(2)

    一.实现思路: 1.Android提供有获取当前总流量的方法 2.上一秒 减去 下一面的流量差便是网速 3.注意计算 二.计算网速的工具类: package imcs.cb.com.viewappli ...

  8. cpu开多少线程合适(转)

    影响最佳线程数的主要因素: 1.IO 2.CPU 根据公式:服务器端最佳线程数量=((线程等待时间+线程cpu时间)/线程cpu时间) * cpu数量 一般来说是IO和CPU.IO开销较多的应用其CP ...

  9. liteos时间管理(九)

    1. 时间管理 1.1 概述 1.1.1 概念 时间管理以系统时钟为基础.时间管理提供给应用程序所有和时间有关的服务. 系统时钟是由定时/计数器产生的输出脉冲触发中断而产生的,一般定义为整数或长整数. ...

  10. Centos 7 下yum搭建lnmp环境(yum安装方式)

    我们都知道linux下安装软件主要有三种方式: 1.源码编译安装,即下载软件源代码,利用gcc g++ make 等编译工具进行编译安装: 此方式的优点:可以指定软件版本,可选择性好:编译时可以手动指 ...