ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

XSSLAB破关详解

2022-02-24 12:03:28  阅读:525  来源: 互联网

标签:查看 &# 破关 alert 闭合 详解 XSSLAB 源代码 源码


Level-1

 

 查看网页源代码发现本关采取get方式传提参数,为反射型XSS漏洞。且get到的参数在h2标签处未作处理。

 

 尝试将<script>alert(0)</script>当作参数传递。提示闯关成功。

 

分析后端源代码可看出,开发者未对传进来的值做任何处理后直接显示在屏幕上

 

level-2

第二关从关卡可以看出,本关和第一关类似。也是使用get传参的反射型漏洞。

 

 

 

 

 尝试传递<script>alert(0)</script>并查看源码,发现参数被双引号包围。

 

 可考虑将前引号闭合,后引号闭合,重铸js代码实现绕过。payload:test"><script>alert(0)</script>//  第一个双引号与源码实现闭合,第一个右尖括号闭合input标签,双斜杠将后面的注释。

 

 

查看服务器后端源代码,可看出只是对传入的参数进行双引号闭合,可考虑添加双引号实现闭合后,重铸payload

 

 Level-3

 

尝试传入<script>alert(0)</script>并查看源码后发现,对传入的代码进行了html编码。

 

 查看后端源码:发现使用htmlspecialchars对输入的参数进行了html编码。无法使用

 

 

绕过思路:采用事件,需要闭合标签的属性

1:'onfocus=javascript:alert('xss') //   (发送后需要点击下输入框)

通过burpsuite抓包结果。

 

 2:'onclick='alert(0)(发送后需要点击下输入框)

 

3:'onmouseover='alert(0)

 

 Level-4:

 

 查看源码,发现和第三关类似使用了Html编码。

 

 查看服务器源代码,发现使用了替换<>函数和html编码,并且用了双引号闭合。

 

 绕过方法和第三关类似,不过闭合需要用双引号。例如http://192.168.8.222/xsslabs/level4.php?keyword="onmouseover="alert(0)。

Level5

传入<script>alert(0)</script>发现script改成sc_ript

 

传入'onmouseover=alert(0)发现也被替换。可能后台对输入的数据进行了过滤和处理。

 

 查看后端源码发现,后台对script和on做了处理。

 

 绕过思路:重新构造标签"><a href="javascript:alert(0)">click me!</a>点击click me过关。

 

 

 level6

和第五关类似,未考虑大小写

 

 

 

 Level7和前两关类似,只过滤一次,可考虑重复关键词

 

 

 Level8:

本关卡中存在一个连接,表示使用了<a href=>标签

 

查看网页源码发现: 传入的值到了两个地方。

 

 

尝试用javascrpt:alert(0)发现script被修改,猜测后台做了过滤

 

 尝试用事件登录on 也被修改了

 

 查看源码发现大小绕过行不通,且无过滤关键字。

 

 绕过思路:可将payload编码实现绕过。

 

 

 

 Level 9和第八关类似

 

 使用编码&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#48;&#41;后发现无效链接,

 

 查看源代码发现使用了strpos函数过滤,输入的payload中必须要后http://字符

 

 因此可构造payload:&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#48;&#41;//http://www.baidu.com  其中http:前的//必要,使后面的地址不生效。

 

 Level10

 

 第10关无输入关 直接网页源代码搞起

 

 发现源代码中三个变量,依次尝试payload后发现均无显示。查询后端源代码

 

 只有t_sort参数具备可变条件,但是类型为隐藏不见的,需要更改类型,且过滤尖括号,无法闭合。考虑事件

t_sort=" type="text" onm ouseover="javascript:alert(0)

 

 Level11(和第十关类似)

 

 

直接网页源代码搞起,发现有四个参数,而且都隐藏了,尝试用十关方法。无用,

 

 

 

 查看源代码:发现t_ref为网页来源,绕过思路使用bp修改referer即可实现绕过。

 

 

 

 

 

 Level12和前两关类似

 

 

网页源代码:发现请求头显示出来了 尝试修改请求头

 

 

 

 

 

 Level 13 考cookie

 

 Level14 题有问题(跳过))

标签:查看,&#,破关,alert,闭合,详解,XSSLAB,源代码,源码
来源: https://www.cnblogs.com/fh0312/p/15928382.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有