news 2026/4/27 2:33:36

xss-labs靶场通关

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
xss-labs靶场通关

本文将介绍xss-labs1-20关的解题思路和通关答案

level-1

第一关开始的URL为

http://localhost/xss-labs/level1.php?name=test

观察页面源代码可以发现,test被放在h2标题上,直接被显示出来的,所以直接在URL上修改name=<script>alert(1)</script>就可以弹窗了

level-2

第二关是使用了input标签,也就是输入框,将关键词keyword的值value从输入端传回后端,因为后端没有过滤,直接把用户输入放进了 value 属性里,所以只要用双引号闭合 value=",再用 > 闭合 <input> 标签,后面的 <script> 就能独立执行。

在输入框输入将value闭合,弹窗跳出,即为成功

"><script>alert(1)<script>

level-3

第三关还是keyword和value,不过闭合的是单引号而不是双引号,跟上一关一样,先闭合value值就行,但是输入<script>alert(1)</script>时不会弹窗,看源码发现<和>都被过滤成&lt和&gt,这两个不会被浏览器识别为<和>,所以要使用没有括号的οnclick=alert(1),意为当点击这个input时会执行alert(1)弹窗

' onclicl='alert(1)

level-4

与第三关一样,这也是过滤<>,不同的只是将单引号改为双引号

level-5

第五关源码乍一看跟第四关一样,当使用第四关的答案时发现对onclick进行过滤了,转为了o_nclick,明显不起作用,既然script标签和onclick事件不起作用,那就使用javascript:alert(1)伪协议和a标签组成一个伪链接,点击后执行伪协议

先闭合>和"

"><a href=javascript:alert(1)>1</a>

level-6

第六关又把a标签的href过滤了,尝试一下大小写混写,看看有没有过滤大小写,发现大写的没有被过滤掉,那就直接可以了

"><a Href=javascript:alert(1)>a</a>

level-7

第7关不像上一关还留个hr_ef给你,直接把href,script删掉了,既然是删掉,那就用双写绕过

"><scrscriptipt>alert(1)</scrscriptipt>

level-8

第八关直接甩了个a标签给我们,输入会到href标签里,但是javascript标签被过滤了,包括<,>,",href,script都被过滤了,可以使用HTML实体编码绕过检测,让后端检测不到javascript关键词

这是javascript:alert(1)的十进制编码,在控制台输入代码即可得到

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;alert(1)
function toDecimal(str) { return str.split('').map(ch => '&#' + ch.charCodeAt(0) + ';').join(''); } toDecimal('javascript:alert(1)');

level-9

第九关也是输入到链接上,不过他在上一关的基础上,会检测你的链接合不合法,不合法就会被过滤,判断合不合法的关键就是有没有http://,有就是合法的,再将http://过滤,让后端检测后输出的是javascript:alert(1)

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;alert(1)//http://

level-10

第十关观察源码,发现多了三个input,3个参数,给三个参数一起传输值111,发现就t_sort参数可以传输,现在修改t_sort,闭合value,让输入框不再隐藏,同时使用点击事件或者滑动事件来弹窗

level10.php?t_sort=" type="text" onclick="alert(1)

level-11

第十一比第十关多了个t_ref参数,使用第十关的方法发现双引号被转义了,所以要从第四个参数入手,应该是referer请求头,在浏览器上安装hackbar插件或者使用burp抓包,我这边使用浏览器的HackBar插件

打开F12,点击HackBar,勾选Referer,随便修改个1,发现确实改变了,证明猜想没错

与上一关一样,修改参数,闭合value,让输入框不再隐藏,同时使用点击事件或者滑动事件来弹窗,然后点击excute执行

" type="text" onclick="alert(1)

level-12

第十二跟第十一比,少了t_ref参数,多了个t_ua参数,既然ref是referer,那ua能不能猜到是user agent,跟上一关一样,使用HackBar插件来修改,发现确实改变了,那就没猜错了

在输入框输入后,使用excute执行

" type="text" onclick="alert(1)

level-13

第十三关看源码,又改成了t_cook,按规律应该是cookie,但是我尝试传输1给cookie,发现没有输出到input上,是不是说明不是cookie的值?是因为cookie需要user=才能传输,后端写死的cookie的名字,改其他的都不行,只能用user=

与前两关一样,打开F12的HackBar,然后勾选cookie框,输入后执行excute

user=" type="text" onclick="alert(1)

level-14

14关解不了,因为src上的链接已经失效了

level-15

第15关的源码里出现了ng-include代码,ng-include就是引用这个1.gif的内容,那我们把1.gif改成前面关卡可以弹出弹窗的内容,不就可以跳过了吗

我使用了第4关的页面,在URL里输入第4关的答案,因为第3关有单引号,会提前闭合单引号,解析失败

?src='level4.php?keyword=" onclick="alert(1)'

level-16

第16关第一眼看也是keyword,而且看源码发现keyword值裸露在外,我就尝试最简单的script标签,发现script标签被过滤成一段&nbsp;,再尝试更多标签,发现a标签,input标签等等常用标签都被过滤,试试不常用的,发现svg,math标签都没被过滤,刚好svg标签可以用来弹窗,空格也被过滤了,所以用%0a代替

keyword=<svg%0aonload=alert(1)>

level-17-20

17到20关都依赖Flash插件,但是现在市面上的浏览器都不太支持flash插件,所以这边只简单讲解通关方法进入后URL有出现arg01=a&arg02=b,a和b是flash的参数,只需要后面加上οnmοuseοver=alert(1)就行。然后鼠标划过flash区域就会弹窗

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 2:31:40

基于Node.js与Vue 3的轻量级服务器监控仪表盘实战

1. 项目概述&#xff1a;从“斗鱼”到“贝塔鱼”的代码仓库之旅最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的仓库&#xff0c;名字叫“BettaFish”&#xff0c;作者是“666ghj”。第一眼看到这个名字&#xff0c;我下意识地联想到了那种色彩斑斓、尾鳍飘逸的观赏鱼——…

作者头像 李华
网站建设 2026/4/27 2:29:21

基于Django设计—— 用户认证功能实现(流浪动物救助平台)

一、项目背景 在流浪动物救助平台中&#xff0c;用户需要注册、登录后才能提交领养申请。Django 提供了强大的内置认证系统 django.contrib.auth&#xff0c;可以快速实现&#xff1a; 用户注册 用户登录 用户注销 登录保护&#xff08;login_required 装饰器&#xff09; …

作者头像 李华
网站建设 2026/4/27 2:28:25

R语言机器学习实战:10大内置数据集应用指南

1. R语言机器学习数据集实战指南在数据科学领域&#xff0c;R语言一直保持着不可替代的地位。作为一名长期使用R进行预测建模的数据分析师&#xff0c;我深刻体会到优质数据集对模型效果的决定性影响。很多初学者常陷入"巧妇难为无米之炊"的困境——掌握了各种算法却…

作者头像 李华
网站建设 2026/4/27 2:25:53

Save Image as Type终极指南:如何在Chrome中一键转换图片格式

Save Image as Type终极指南&#xff1a;如何在Chrome中一键转换图片格式 【免费下载链接】Save-Image-as-Type Save Image as Type is an chrome extension which add Save as PNG / JPG / WebP to the context menu of image. 项目地址: https://gitcode.com/gh_mirrors/sa…

作者头像 李华
网站建设 2026/4/27 2:24:19

Android WebView开发痛点与AgentWeb解决方案全解析

1. 项目概述如果你在Android开发中用过原生的WebView&#xff0c;大概率经历过一些“至暗时刻”&#xff1a;页面加载缓慢、文件上传功能残缺、JavaScript交互繁琐、Cookie管理混乱&#xff0c;还有那个时不时就冒出来的“Webpage not available”... 这些问题就像房间里的大象…

作者头像 李华
网站建设 2026/4/27 2:15:38

PostgreSQL 17+ 关键基础监控指标详解

目录 1.核心点 1.1.致命级&#xff08;☆☆☆☆☆&#xff09;—— 立即导致实例不可用&#xff0c;需设置紧急告警&#xff0c;SLA响应目标&#xff1a; 1.2.严重级&#xff08;☆☆☆☆&#xff09;—— 性能严重劣化&#xff0c;间接导致不可用&#xff0c;SLA响应目标&a…

作者头像 李华