栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

XSS-Lab靶场

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

XSS-Lab靶场

目录

Lab-1

Lab-2

Lab-3

Lab-4

Lab-5

Lab-6

Lab-7

Lab-8

Lab-9

Lab-10

Lab-11

Lab-12

Lab-13

Lab-14

Lab-15

Lab-16

Lab-17

Lab-18

Lab-19

Lab-20


Lab-1

直接插入触发弹窗;

Payload:

Lab-2

插入js语句后发现需先将前面闭合来触发js语句弹窗;

Payload:">

Lab-3

插入语句发现没弹窗闭合也没效果,查看页面源代码发现<>、“”被转义了,尝试用下事件型语句;

Payload:'οnfοcus='alert(1)

 

Lab-4

先尝试用常规js语句,发现<>被过滤了,用js事件尝试触发弹窗;

Payload:"οnfοcus="alert(1)

Lab-5

在尝试js语句触发弹窗是发现

Payload:">

 

 

Lab-6

经测试发现

Payload:">

 

 

 

Lab-7

测试发现script、herf等被过滤了,尝试下双写绕过;

Payload:">

 

Lab-8

经测试发现script、on、herf等都被过滤且大小写无效,尝试使用HTML实体转换;

Payload:javascript:alert(1)

 

https://www.qqxiuzi.cn/bianma/zifushiti.php

Lab-9

查看源码发现会检测是否存在http://,

Payload:javascript:alert(1)//http://

Lab-10

常规语句测试检查发现有3个input标签状态为hidden,尝试构造payload修改type值,发现t_sort可以修改,

payload:&t_sort=" type="text" οnfοcus="alert(1)

Lab-11

尝试lab-10的测试方法:&t_link=" type="text"&t_history" type="text"&t_sort=" type="text"&t_ref=" type="text"发现没反应,查看源码发现接受参数值为t_sort,但是函数htmlspecialchars()会对双引号进行转义从而无法闭合,尝试通过$_SERVER['HTTP_REFERER']这个检测语句修改数据包的referer值来触发js语句;

Payload:referer: "type="text" οnfοcus="alert(1)

 

 

 

Lab-12

同lab-11思路一样,只是这里需要修改UA值;

Payload:"type="text" οnfοcus="alert(1)

 

 

Lab-13

和前面lab一样,只是需要修改cookie值;

Payload:"type="text" οnfοcus="alert(1)

 

Lab-14

这关什么都没有且跳转的url失效了,本地搭建测试环境

什么是Exif?

Exif是一种图像文件格式,实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍摄时的光圈、快门、白平衡、ISO、焦距、日期时间等各种和拍摄条件以及相机品牌、型号、色彩编码、拍摄时录制的声音以及GPS全球定位系统数据、缩略图等。你可以利用任何可以查看JPEG文件的看图软件浏览Exif格式的照片,但并不是所有的图形程序都能处理Exif信息。

代码:







欢迎来到level14





欢迎来到level14 欢迎来到level14

'; try{ // 允许上传的图片后缀 $allowedExts = array("gif", "jpeg", "jpg", "png"); $temp = explode(".", $_FILES["file"]["name"]); $extension = end($temp); // 获取文件后缀名 if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/pjpeg") || ($_FILES["file"]["type"] == "image/x-png") || ($_FILES["file"]["type"] == "image/png")) && ($_FILES["file"]["size"] < 204800) // 小于 200 kb && in_array($extension, $allowedExts)) { if ($_FILES["file"]["error"] > 0) { echo "错误:: " . $_FILES["file"]["error"] . "
"; } else { echo "上传文件名: " . $_FILES["file"]["name"] . "
"; } move_uploaded_file($_FILES["file"]["tmp_name"], $_FILES["file"]["name"]); } else { echo "非法的文件格式"; } $file = $_FILES["file"]["name"]; $exif = exif_read_data($file, 0, true); echo "[ ".$file." ]的EXIF信息:"; foreach ($exif as $key => $section) { foreach ($section as $name => $val) { echo "$key.$name: $val
n"; } } }catch (Exception $e){ echo $e; } ?>
这关成功后不会自动跳转。成功者点我进level15

上传张修改后的图片,触发弹窗

 

Lab-15

常规闭合测试发现被转义了,查看源码,根据ng-include特性包含level1.php利用name参数构造

Payload:?src='http://kaotopstatic.cdn.bcebos.com/skin/sinaskin/image/nopic.gif'

*ng-include是angular js中的东西,其作用相当于php的include函数。

①、ng-include 指令用于包含外部的 HTML文件。

②、包含的内容将作为指定元素的子节点。

③、ng-include 属性的值可以是一个表达式,返回一个文件名。

④、默认情况下,包含的文件需要包含在同一个域名下。

⑤、ng-include,如果单纯指定地址,必须要加引号

⑥、ng-include,加载外部html,script标签中的内容不执行

⑦、ng-include,加载外部html中含有style标签样式可以识别

Lab-16

常规测试发现srcipt、空格等被过滤,尝试%0a或%0D当成空格使用触发弹窗;

Payload:

“0D”是把光标移到同一行的顶头——回车(CR)

“0A”是把光标移到下一行——换行(LF)

 

Lab-17

页面什么都没有使用个常规语句测试,查看页面源码发现参数在标签中,火狐的swf直接屏蔽了,使用谷歌无法显示但可以利用事件onmouseover、onfocus来触发,要是可以正常显示可以使用onclick这种;

Payload:οnfοcus=alert(1)

标签就是引入一个swf文件到浏览器端,并且它的src属性值没

有添加引号,所以不用闭合

Lab-18

同lab-17一样;

Payload:οnfοcus=alert(1)

Lab-19

这里涉及到flash xss,需要先获取swf文件进行反编译,这里参考了下大佬文章:

https://blog.csdn.net/qq_40929683/article/details/120422266

测试了好几个浏览器都不行,后续在看看;

根据%s,猜测这个应该是个占位符,

定位%s,这里从参数中提取名为version的参数,替换到%s上

通过函数转换成文本,再通过函数write()输出

从源码可以看出这里需要2个传参,

构造payload:arg01=version&arg02=xss

Lab-20

思路同lab-19,环境问题略

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1039544.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号