xss-lab

xss

XSS全称跨站脚本(Cross Site Scripting),为避免与层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故缩写为XSS。这是一种将任意 Javascript 代码插入到其他Web用户页面中执行以达到攻击目的的漏洞。攻击者利用浏览器的动态展示数据功能,在HTML页面里嵌入恶意代码。当用户浏览该页时,这些潜入在HTML中的恶意代码会被执行,用户浏览器被攻击者控制,从而达到攻击者的特殊目的,如 cookie窃取等。

XSS属于代码注入的一种,它允许攻击者将代码注入到网页,其他用户在浏览网页时就会受到影响。

level1

get传参输入,调用alert()函数来触发弹窗

<script>alert()</script>

level2

尝试上一关的办法,失败

还是get传参,第一个被进行html实体转义,第二个没有,所以要用‘’闭合避免,实体转义就是为了确保一些特殊字符能被正确解析,就把他转换成特定实体表示形式来确保解析

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

level3

随意输入,看源码

这关是单引号试试看

看wp,原来是符号也被实体化了,htmlspecialchars函数只针对<>大于小于号进行html实体化,wp中用onfocusonfocus,来避开使用<>

“onfocus”在 HTML 中是一个事件属性,当一个元素获得焦点时触发。例如,当一个文本输入框被用户点击或通过键盘操作选中时,就会触发“onfocus”事件,onfocus事件就是当输入框被点击的时候,就会触发myFunction()函数,再配合js为协议来执行alert

上传' οnfοcus=javascript:alert() '后再点击输入框出发onfocus事件

level4

双引号,尝试使用上一关的办法,确实是把单引号改成双引号

level5

还是<input>标签,双引号尝试上一关的办法

可以看到字符被异化成o_nfocous了,看wp是说有转换成小写字母的函数,不能用大小写绕过,要使用<a>href标签法<a>href标签法

当点击<a>是会出发跳转,可以是网站也可以是js代码,这题就是用这个来执行js代码

"> <a href=javascript:alert()>xxx<a> <"

level6

尝试onfocus条件还是一样

看wp得知,上面我们可以看到o被禁用了,题目源码提示了禁用语句,但是我这里的源码找不到,不论是开发者模式,还是直接看源码都没有

这边看一下wp中的代码

可以看到一些字符串会被替代成对应的字符串,没有添加大小写变化,所以可以用大写绕过,对应语句,_前面的字符变成大写

"> <a hRef=javascRipt:alert()>xxx<a> <"

level7

和往常 一样是input标签双引号

一样的去尝试用ahref标签

可以看到一部分字符被删除了,从上一关wp可以发送测试关键字字符串" OnFocus <sCriPt> <a hReF=javascript:alert()>

可以看到on、script、href都被删除了或者替换成空值了,这边不知道有没有禁用大小写,尝试之后发现是禁用了的,wp上用的是双写字母绕过

"> <a hrehreff=javasscriptcript:alert()>xxx</a> <"

level8

这次显然没有引号,同样是get传参,而且它给你设置了a href标签等于我们输入的内容,所以我们尝试将之前使用a href标签时的内容填进去

可以看到输入的还是有被替换,尝试大小写绕过也是失败的,但是我们不知道具体替换的时字符还是字符串,是什么字符串,所以也不能去用双写字符绕过,去看wp时给了源码

显然可以知道src被替换了,但是这次不是替换成空字符,所以也不能用双写字符串绕过,wp是使用href的隐藏属性自动Unicode加密,也就是将我们输入的字符串进行Unicode加秘密之后再输入网站,将javascript:alert()加密

level9

这次添加了引号,可以看到我们输入的是not bad,href却显示您的连接不合法,也就是在输入过程中,他还添加了一个验证,这边还是看不到验证的源码,去wp里看

可以看到我们输入的字符串中要包含有http://,否则就是不合法,单纯加上去又不行,但是可以看到确实是通过了验证

看了wp才知道是因为输入的字符串解码之后就不是我们要执行的js代码了,所以要把http注释掉

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#41;/* http:// */

level10

本题没有输入框,但其实就看传参方式而已,get就直接url,post就用hackbar,用测试字符尝试一下,是get传参

可以看到没有字符被替换,只有特殊字符被异化了,下面的代码显示有三个隐藏的输入项,看wp得知是get传参t_sort,并过滤掉了<>号,为什么过滤了<>我也没搞清楚,因为不能闭合标签所以我们用不了a href标签,但可以用' οnfοcus=javascript:alert() ',因为这里输入框被隐藏了,需要添加type="text",注意这里要用双引号

t_sort=" οnfοcus=javascript:alert() type="text

level11

比上题多了一行隐藏代码

"http://xss-lab/level10.php?t_sort=%22%20οnfοcus=javascript:alert()%20type=%22text"

wp中说明,t_ref的<input>标签是http头referer的参数,HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,显然我们是从上一条跳过了的,http头的referer会记录,但是这个要怎么用呢

这边是抓包之后加一个referer去测试字符串

返回看源码

可以看到<>被删了,所以我们可以用" οnfοcus=javascript:alert() ",同样是构造referer

Referer: " οnfοcus=javascript:alert() type="text

沿用上一罐的直接改

level12

将referer替换了,像是系统的版本,看之前抓包的图片也可以知道要改user-agent,沿用上一罐的直接改

level13

又换了一个隐藏,要怎么判断这个隐藏是什么传参方式?

这边看wp,他的源码又和我不一样

说是通过这句话判断是cookie,还是直接抓波发送测试字符串发现只删除<>,所以用

" οnfοcus=javascript:alert() type="text

level14

源码里又两个网站一个404报错了

另一个也看不出什么,看wp知道是网站坏了,原本的思路是向那个网站发送一个带xss代码的图片,这个可以在属性中编辑,之后向网站发送图片以达到弹窗的目的

level15

出现了ng-include AngularJS ng-include 指令详解-CSDN博客

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

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

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

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

1.ng-include,如果单纯指定地址,必须要加引号
2.ng-include,加载外部html,script标签中的内容不执行,不能加载,如果需要控制器处理需要在主页中注册
3.ng-include,加载外部html中含有style标签样式可以识别
4.ng-inclue,记载外部html中的link标签可以加载

这边看wp时先测试包含文件,包含的时=是第一个的地址

可以看到两关并起来了,然后传参测试字符串?src=" ' sRc DaTa OnFocus <sCriPt> <a hReF=javascript:alert()> &#106;

看源码双引号、<>被过滤了,wp上说不能直接用会直接弹窗的东西,要用手动的,这是为什么XSS跨站脚本攻击实例与防御策略-CSDN博客

可以在这里面选择,这里选择<img>,然后选择在第一关弹窗

?src='/level1.php?name=<img src=1 οnmοuseοver=alert()>'

我也尝试用这个关弹窗可是不行,又是为什么

level16

这边是先传参测试字符串?keyword=" ' sRc DaTa OnFocus OnmOuseOver OnMouseDoWn P <sCriPt> <a hReF=javascript:alert()> &#106; 

对比可以看到字母小写化了,script和/替换都成空格,那么就是绕过了,选择其他的来代替被替换的字符,wp中是使用回车替代空格,回车的url编码是%0a,在上面的攻击脚本中找一个不用/使用即可

<img%0Asrc=1%0Aοnmοuseοver=alert()>

level17

还是先测试

发现前后没什么区别,看wp发现是使用embed标签是 HTML 中的一个标签,用于在 HTML 文档中嵌入外部内容,如音频、视频、插件等。但是现在的版本已经不用embed标签了,所以点开它嵌入的图片是乱码,正确的解法是在这个图片中去构造弹窗payloadembed标签的使用方法和属性详解_<embed>-CSDN博客

?arg01=a&arg02= οnmοuseοver=alert()

level18

这题和上一题显然是一样的,本来以为是过滤会不一样,结果看wp就是一样的连payload都是一样的

level19

一样要在镶嵌入的图片里去发送payload

level20

同上

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器为什么会禁止 Ping?服务器禁止 Ping 的好处

在网络管理和服务器运维中&#xff0c;经常会遇到服务器禁止 Ping 的情况。为了确保网络安全和减少不必要的风险&#xff0c;管理员可能会选择禁止 Ping 命令&#xff0c;即禁止服务器响应 ICMP 请求。尽管 Ping 命令是网络诊断中常用的工具&#xff0c;但禁止 Ping 也有其合理…

课程2. 用PyTorch训练神经网络与梯度下降

课程2. 用PyTorch训练神经网络与梯度下降 Pytorchtorch.TensorPytorch 上的神经网络用于余弦函数逼近的全连接神经网络 训练神经网络 梯度下降最小化一个变量的函数最小化多个变量的函数使用梯度下降训练神经网络在 Pytorch 中训练神经网络从 nn.Module 类继承 将计算传输到显卡…

IP-----动态路由OSPF(2)

这只是IP的其中一块内容&#xff0c;IP还有更多内容可以查看IP专栏&#xff0c;前一章内容为动态路由OSPF &#xff0c;可通过以下路径查看IP-----动态路由OSPF-CSDN博客,欢迎指正 注意&#xff01;&#xff01;&#xff01;本部分内容较多所以分成了两部分在上一章 5.动态路…

手机打电话时如何识别对方按下的DTMF按键的字符-安卓AI电话机器人

手机打电话时如何识别对方按下的DTMF按键的字符 --安卓AI电话机器人 一、前言 前面的篇章中&#xff0c;使用蓝牙电话拦截手机通话的声音&#xff0c;并对数据加工&#xff0c;这个功能出来也有一段时间了。前段时间有试用的用户咨询说&#xff1a;有没有办法在手机上&#xff…

深入剖析:自定义实现C语言中的atoi函数

在C语言的标准库中&#xff0c; atoi 函数是一个非常实用的工具&#xff0c;它能够将字符串形式的数字转换为对应的整数。然而&#xff0c;当我们深入探究其实现原理时&#xff0c;会发现其中蕴含着许多有趣的编程技巧和细节。本文将详细讲解如何自定义实现一个类似 atoi 功能的…

PyTorch 源码学习:GPU 内存管理之它山之石——TensorFlow BFC 算法

TensorFlow 和 PyTorch 都是常用的深度学习框架&#xff0c;各自有一套独特但又相似的 GPU 内存管理机制&#xff08;BFC 算法&#xff09;。它山之石可以攻玉。了解 TensorFlow 的 BFC 算法有助于学习 PyTorch 管理 GPU 内存的精妙之处。本文重点关注 TensorFlow BFC 算法的核…

流式输出方案:sse与websocket的使用

1、sse(Server-Sent Events) SSE是一种允许服务器向浏览器推送实时更新的技术。它基于HTTP协议&#xff0c;是一种单向的通信方式 单向通信基于HTTP自动重连&#xff08;内置了自动重连机制&#xff0c;当连接断开时&#xff0c;浏览器会自动尝试重新连接&#xff09; 1.1 …

基于定制开发开源AI大模型S2B2C商城小程序的商品选品策略研究

摘要&#xff1a;随着电子商务的蓬勃发展和技术的不断进步&#xff0c;商品选品在电商领域中的重要性日益凸显。特别是在定制开发开源AI大模型S2B2C商城小程序的环境下&#xff0c;如何精准、高效地选择推广商品&#xff0c;成为商家面临的一大挑战。本文首先分析了商品选品的基…

时序论文41 | Medformer:基于多粒度patch的时序分类模型

论文标题&#xff1a;Medformer: A Multi-Granularity Patching Transformer for Medical Time-Series Classification 论文链接&#xff1a;https://arxiv.org/abs/2405.19363 代码链接&#xff1a;https://github.com/DL4mHealth/Medformer. &#xff08;后台回复“交流”…

建筑兔零基础自学python记录32|学过的函数代码记录19-25

这是之前matplotlib用过的代码记录&#xff0c;以防忘记记录一下: 19.price_data 是一个 NumPy 记录股票数组。每一列可以有不同的数据类型&#xff0c;并且每列都有一个对应的字段名。&#xff08;类似excel的表中的列&#xff09; date&#xff1a;存储交易日期&#xff0c…

面试八股文--数据库基础知识总结(2) MySQL

本文介绍关于MySQL的相关面试知识 一、关系型数据库 1、定义 关系型数据库&#xff08;Relational Database&#xff09;是一种基于关系模型的数据库管理系统&#xff08;DBMS&#xff09;&#xff0c;它将数据存储在表格&#xff08;表&#xff09;中&#xff0c;并通过表格…

Linux:目录创建命令mkdir功能及用法详解

mkdir是Make Directory的缩写&#xff0c;该命令在 Linux 中用于创建目录&#xff08;单层或多层&#xff09;&#xff0c;在Linux中很常用&#xff0c;可以说是基础性命令。该命令支持&#xff1a;1&#xff09;创建单层或多层目录2&#xff09;直接指定目录权限。本文详细介绍…

2024年国赛高教杯数学建模D题反潜航空深弹命中概率问题解题全过程文档及程序

2024年国赛高教杯数学建模 D题 反潜航空深弹命中概率问题 原题再现 应用深水炸弹&#xff08;简称深弹&#xff09;反潜&#xff0c;曾是二战时期反潜的重要手段&#xff0c;而随着现代军事技术的发展&#xff0c;鱼雷已成为现代反潜作战的主要武器。但是&#xff0c;在海峡或…

Visual Studio Code 远程开发方法

方法1 共享屏幕远程控制&#xff0c;如 to desk, 向日葵 &#xff0c;像素太差&#xff0c;放弃 方法2 内网穿透 ssh 第二个方法又很麻烦&#xff0c;尤其是对于 windows 电脑&#xff0c;要使用 ssh 还需要额外安装杂七杂八的东西&#xff1b;并且内网穿透服务提供商提供的…

SQLite 安装教程以及可视化工具介绍

目录 简述 1. Windows 系统安装 1.1 下载预编译的二进制文件 1.2 解压文件 1.3 配置环境变量 1.4 验证安装 2. GUI 可视化工具 2.1 免费工具 2.1.1 DB Browser for SQLite 2.1.2 SQLiteStudio 2.1.3 SQLite Expert 2.1.4 SQLiteGUI 2.1.5 Antares SQL 2.1.6 DbGa…

smolagents学习笔记系列(五)Tools-in-depth-guide

这篇文章锁定官网教程中的 Tools-in-depth-guide 章节&#xff0c;主要介绍了如何详细构造自己的Tools&#xff0c;在之前的博文 smolagents学习笔记系列&#xff08;二&#xff09;Agents - Guided tour 中我初步介绍了下如何将一个函数或一个类声明成 smolagents 的工具&…

LLM2CLIP论文学习笔记:强大的语言模型解锁更丰富的视觉表征

1. 写在前面 今天分享的一篇论文《LLM2CLIP: P OWERFUL L ANGUAGE M ODEL U NLOCKS R ICHER V ISUAL R EPRESENTATION》&#xff0c; 2024年9月微软和同济大学的一篇paper&#xff0c; 是多模态领域的一篇工作&#xff0c;主要探索了如何将大模型融合到Clip模型里面来进一步提…

一键部署DeepSeek

腾讯Cloud Studio提供DeepSeek一键部署功能&#xff0c;0行代码&#xff0c;秒级部署使用&#xff01; 重点是每月免费提供10000分钟&#xff01; 不用等待模型下载&#xff0c;创建即可使用。 内置 Ollama、DeepSeek-R1 1.5B、7B、8B、14B 及 32B 模型。 热门模板 AI模板 前…

【计算机网络】IP协议

目录 1. 协议头格式 2. 网段划分 3. 特殊的IP 4. 公网IP && 内网IP 总结 网络层的IP协议主要解决的是什么问题&#xff1f;——将数据包从B主机发送给C主机&#xff1b;传输层协议tcp提供可靠的策略&#xff1b;网络层IP协议提供数据数据传输的能力&#xff1b; 发…

YOLOv12 ——基于卷积神经网络的快速推理速度与注意力机制带来的增强性能结合

概述 实时目标检测对于许多实际应用来说已经变得至关重要&#xff0c;而Ultralytics公司开发的YOLO&#xff08;You Only Look Once&#xff0c;只看一次&#xff09;系列一直是最先进的模型系列&#xff0c;在速度和准确性之间提供了稳健的平衡。注意力机制的低效阻碍了它们在…