XSS-Labs靶场1---11关

news/2024/4/28 20:03:17

一、XSS环境搭建:

[ 靶场环境篇 ] XSS-labs 靶场环境搭建(特别详细)_xss靶场搭建-CSDN博客

该博主总结的较为详细,若侵权必删

常用的xss攻击语句:

输入检测确定标签没有过滤后,为了显示存在漏洞,需要插入 xss 攻击代码。
常用的语句:

#上面的确实是有点多了,这里列举几个常用的:
<svg onload=alert(1)>
<img src=1 onerror="alert(1)">
<script>alert(1)</script>
<a href="javascript:alert('xss')">aaa</a>

less-1:

第一关算基础关卡,本身没有什么考点:

我们看到代码回显出test,随后我们查看源码。

这里是直接使用get传参,将值传入str中。

随后我们直接使用payload:

?name=<script>alert(1)</script>

随后完成该关:

less-2:

 我们使用第一关的方法进行测试:

 随后发现即使代码正常闭合,但我们并未得出结果,此时我们查看源码:

我们要完成双引号的逃逸:

第一种方法(用onclick点击事件逃逸出双引号限制)

aaa"onclick="alert(1)

第二种方法:

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

逃逸成功。 

less-3:

尝试第二关的方法:

aaa"onclick="alert(1)

此刻双引号是蓝色的,并未完成闭合, 随后我们查看源码:

此时,form表单中的input是单引号闭合,我们直接使用payload:

'aaa onclick='alert(1)

 我们使用单引号进行逃逸:

逃逸成功。

less-4:

我们继续尝试前两关的payload尝试:

aaa"onclick="alert(1)

我们仔细一想,两关考察的知识点不可能相同,随后我们查看代码: 

 仔细观察,发现过滤的是<>符号,所以我们无法使用第一关中的第一种方法进行逃逸,即下述方法:

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

故只需要使用onclick点击事件,绕过尖括号即可。

less-5:

我们继续用前两关的payload方法进行测试:

"aaa onclick="alert(1)

我们仔细观察,onclick变成了o_nclick,我们查看源码:

将script和onclick事件全部过滤,我们需要考虑其他的点击事件,且由于有strtolowers(),所有的大写字母都会被转成小写,我们无法使用Onclick进行payload注入

此刻,我们考虑使用伪代码的方式进行过滤:

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

逃逸成功 。

less-6:

查看源代码:

过滤了如此多的代码,我们初看可能没有头绪,但仔细发现,即使过滤了如此多的代码,单并没有了上一关的strtolowers()函数,我们可以使用大小写混合拼写来完成逃逸。

"aaa Onclick="alert(1)

less-7:

话不多说,我们继续使用我们最基础的payload进行测试。

仔细发现,我们的onclick()点击事件直接中的on直接消失了,我们查看源代码:

又是过滤了如此多的字符,但是我们可以使用其他的方法进行逃逸。(例如双写  )

"aaa oonnclick="alert(1)

 逃逸成功。

less-8:

这关有添加连接,所以我们我们考虑伪代码的方式。

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

添加完成后查看代码,发现括号并未闭合,此时我们查看源码:

我们可以看出此关屏蔽了大小写,屏蔽了大多数符号,同时进行了大小写符号转换,此时我们考虑使用html的实体编码来完成本关的payload注入。

随后我们将转义后的伪代码进行验证: 

&#x6a;&#x61;&#x76;&#x61;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;:alert(1)

我们可以看出代码已经闭合,逃逸成功。

less-9:

能看到仍然具有上一关所拥有的友情链接,我们使用上一关的payload注入查看。

链接不合法,我们查看源码:

能看出问题出现在if语句中,由于我们要对$str7进行判断,看是否有'https://'语句,所以我们加上:

&#x6a;&#x61;&#x76;&#x61;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;&#x3a;&#x0a;
alert(1) //http://

 

逃逸成功。 

同时,我们还可以将http放入alert语句中:

&#x6a;&#x61;&#x76;&#x61;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;&#x3a;&#x61;&#x6c;&#x65;&#x72;&#x74;&#x28;&#x27; http:// &#x27;&#x29;&#x0a;

同样也可以逃逸成功。 

less-10:

初看less10,没有input标签,所以我们通过f12查看源码过后,type值被隐藏了,我们查看源码:

keyword=t_link=aaaa&t_history=bbbb&t_sort=ccccc"onclick="alert(1)

 很明显,参数进来了,通过源代码我们可以得知,t_sort为隐藏的传参方法,所以我们需要将其方法改为type类型。

?keyword=t_link=aaaa&t_history=bbbb&t_sort=ccccc" type="text" onclick="alert(1)

逃逸成功。 

less-11:

此关仍然没有input输入框,我们使用第十关的payload进行注入:

?keyword=t_link=aaaa&t_history=bbbb&t_sort=ccccc" type="text" onclick="alert(1)

没有结果,我们查询源码:

可以看到HTTP_REFERRE()函数,但该函数有什么意思呢?

我们查询资料,可以得出Referer是跳转函数,我们通过查看第十一关的referer的值,发现他其实是由第十关跳转过来的,故我们考虑需要在此基础上想出payload方法。

此时,我们需要用一款名叫Hackbar的插件(该插件我只在火狐上找到,若有其他方法,欢迎补充) 

渗透测试-浏览器插件-Hackbar的安装与使用教程-CSDN博客(该博主总结的较为详细,可以参考,若侵权则必删除)

下图即为Hackbar插件成品:

我们导入url后,再选择Referer输入:

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

随后点击触发即可完成:

 逃逸成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.cpky.cn/p/10471.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

PyTorch之完整的神经网络模型训练

简单的示例&#xff1a; 在PyTorch中&#xff0c;可以使用nn.Module类来定义神经网络模型。以下是一个示例的神经网络模型定义的代码&#xff1a; import torch import torch.nn as nnclass MyModel(nn.Module):def __init__(self):super(MyModel, self).__init__()# 定义神经…

Win10桌面便签小工具怎么添加?一招轻松搞定!

在这个信息爆炸的时代&#xff0c;如何高效地管理自己的时间和任务成为了许多人关注的焦点。而Win10桌面便签小工具作为一款简单实用的工具&#xff0c;正逐渐受到更多人的关注和喜爱。作为Win10系统中常用的便捷工具之一&#xff0c;桌面便签小工具的添加操作简单又实用。那么…

阳光音乐厅订票系统技术解析 Java+SpringBoot+Vue+MySQL

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

多模态响应与功能集成!华中科技大学微型磁控胶囊机器人登上《Nature Communications》!

胶囊机器人可以通过口服方式抵达胃肠道病灶区域实施医疗功能&#xff0c;为实现胃肠道疾病无痛无创诊疗和提高患者依从性提供了重要途径。其中&#xff0c;磁控胶囊机器人技术因其驱动方式具有非接触、穿透性能好和控制模式丰富等优势而被认为是最理想的胃肠道疾病诊疗手段之一…

Linux 进程状态环境变量

目录 一、操作系统的进程状态 二、Linux内核的进程状态 1、S、R状态 2、前后台进程 3、可中断睡眠(S>>T状态) 4、D状态(不可中断睡眠) 5、僵尸进程(Z状态) 三、孤儿进程 四、优先级 1、概念 2、PRI and NI 3、查看进程优先级 五、其他概念 六、环境…

【stm32】hal库学习笔记--定时器输出PWM波

【stm32】hal库学习笔记–定时器输出PWM波 PWM波原理 输出比较 输入捕获 驱动函数 定时器驱动函数 PWM波驱动函数 定时器基本不使用DMA方式 定时器中断处理通用函数 HAL_TIM_IRQHandler实验一:输出固定占空比PWM波 时钟树配置 PF9 改为tim14CH1 tim14配置 开启tim14全局中…