xss-labs靶场6-10关

文章目录

  • 前言
  • 一、靶场6-10关
    • 1、关卡6
    • 2、关卡7
    • 3、关卡8
    • 4、关卡9
    • 5、关卡10
  • 总结


前言

此文章只用于学习和反思巩固xss攻击知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚未授权的网站做渗透测试!!!


一、靶场6-10关

1、关卡6

发现url、搜索框有可控参数keyword。输入’“<>看看有没有被过滤,看前端代码发现input标签的value值没有过滤’”<>,h2标签内容被实体化了。也测试了script、关于on的onclick、onerror等,也是被过滤了。再试一试上一关的a标签发现href也被过滤了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
但是我们试一试大小写居然绕过了,这一关原来是没有大小写过滤。也就是说前面几关的方法这里用大写就能绕过,这里我随便用了一个。
攻击语句为

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

在这里插入图片描述
看源代码也是发现和我们所猜测的一样,看到str_replace函数把敏感xss语句替换为正常字符串。
在这里插入图片描述

2、关卡7

这里我们有经验了,直接提交"'<><script>onhref,看看有没有过滤。发现input标签value值script、on、href不见了,我们初步猜测是把敏感xss攻击语句替换为空了。但是我们学过文件上传漏洞就知道有双写后缀名绕过。因为后台管理员只过滤一次敏感语句,我们双写就能绕过。这里我们攻击语句为

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

在这里插入图片描述
在这里插入图片描述
我们看源代码发现和我们猜测的一样,敏感语句被替换为空了。为什么上一关不能双写绕过呢,仔细发现上一关其实是把敏感语句替换为其他字符串了,这一关是替换为空。这就是6、7关不同的地方。而且第7关有大小写过滤。
在这里插入图片描述

3、关卡8

第八关我们看源代码来做,因为想不到方法。发现源代码是全面过滤了keyword参数之前的方法都无效了,但是发现这一关不同的地方是有一个友情链接,我们得从这里入手。
在这里插入图片描述
在这里插入图片描述
看源代码发现还有一个可控参数就是友情链接的值,a标签的href我们是可以控制的。但是这个参数是被完全过滤了,这个时候我们得利用href隐藏属性自动unicode解码的功能进行绕过。因为编码的xss语句可以绕过这些重重过滤。但是这里我们不能利用之前的攻击语句进行编码,例如"><sCript>alert(1)</sCript>因为这样就是把href闭合掉了,而且利用不到href自动解码功能了。
攻击语句为

javascript:alert()

编码得&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#41;
在这里插入图片描述

4、关卡9

又是友情链接,这里我们看源代码,发现过滤手段和上一关差不多,该过滤的都过滤了。这里显而易见突破点还是友情链接这里。
但是仔细观察源代码发现与上一关不同的是这一关对友情链接有一个逻辑判断,意思是如果你输入的链接没有http://开头的话,它就会执行if语句输出你的链接不合法,所以这一关就是加上http://就行了
攻击语句为
&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#41;/*http://*/
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里攻击语句我们要把http://用/**/注释掉,不然就会当作地址了不会执行js脚本。

5、关卡10

发现源代码中keyword参数是被过滤的,但是发现隐藏的参数t_sort可以进行传参。而且这个参数只过滤了尖括号,这里我们利用onclick。而且后面加上type=test,因为默认是隐藏的输入框,这里我们要构造输入框才能触发onclick事件。最后一个双引号是闭合type的。<input name="t_sort" value=""onclick="alert()" type="test" type="hidden">
攻击语句为

"οnclick="alert()" type="test

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

总结

此文章是小白自己为了巩固xss攻击而写的,大佬路过请多指教!

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

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

相关文章

在win10上安装pytorch-gpu版本2

安装anaconda即下载了python&#xff0c;还可以创建虚拟环境。 目录 1.1 anaconda安装 1.2 pytorch-gpu安装 1.1 Anaconda安装 anaconda的安装请看我之前发的tensoflow-gpu安装&#xff0c;里面有详细的安装过程&#xff0c;这里不做重复描述&#xff0c;传送门 1.2 pyt…

羊大师提示,羊奶都有哪些惊人功效?

羊奶不仅是一种美味的健康饮品&#xff0c;在近年来备受瞩目的的健康圈子里&#xff0c;羊奶还被赋予了更多的功效&#xff0c;成为一种备受推崇的保健品。羊奶不但富含营养&#xff0c;而且还有着非常多的益处&#xff0c;它能够用来美容、保健&#xff0c;甚至还可以治疗某些…

【Java】多线程-单例模式/volatile-指令重排序

单例模式即代码中只有一个实例的模式 适用场景&#xff1a;有些场景下&#xff0c;有的类只能有一个对象&#xff0c;不能有多个 要注意&#xff1a;在单例模式下&#xff0c;要保证不能产生多个实例 1、饿汉模式 class Singleton{private static Singleton instance new …

Mybatis plus 简介

简介 MyBatis-Plus (opens new window)&#xff08;简称 MP&#xff09;是一个 MyBatis (opens new window)的增强工具&#xff0c;在 MyBatis 的基础上只做增强不做改变&#xff0c;为简化开发、提高效率而生。 官网:https://baomidou.com/pages/24112f/ 特性 无侵入&…

《QT从基础到进阶·三十八》QWidget实现炫酷log日志打印界面

QWidget实现了log日志的打印功能&#xff0c;不仅可以在界面显示&#xff0c;还可以生成打印日志。先来看下效果&#xff0c;源码放在文章末尾&#xff1a; LogPlugin插件类管理log所有功能&#xff0c;它可以获取Log界面并能打印正常信息&#xff0c;警告信息和错误信息&…

runnergo全栈测试平台

一、全栈测试平台runnergo使用 官网 官方使用文档 二、单接口测试 三、性能测试 1.性能测试 2.性能测试报告 四、自动化测试&#xff08;暂时不支持UI自动化&#xff0c;或许会上&#xff09;

Jmeter 压测实战保姆级入门教程

1、Jmeter本地安装 1.1、下载安装 软件下载地址&#xff1a; https://mirrors.tuna.tsinghua.edu.cn/apache/jmeter/binaries/ 选择一个压缩包下载即可 然后解压缩后进入bin目录直接执行命令jmeter即可启动 1.2 修改语言 默认是英文的&#xff0c;修改中文&#xff0c;点击…

使用Java Servlet生成动态二维码

文章目录 引入ZXing库创建QRCodeServlet部署到Servlet容器拓展功能1. 动态生成二维码内容2. 调整二维码尺寸3. 错误修正级别4. 日志输出 结语 &#x1f389;欢迎来到Java学习路线专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒&#x1f379;✨博客主页&…

【追求卓越04】数据结构--栈与队列

引导 今天我们开始学习栈与队列的内容&#xff0c;我觉得栈并不难&#xff0c;所以篇幅也就不会那么多了。在虚拟空间中&#xff0c;栈是用户空间中的一种数据结构&#xff0c;它主要用于保存局部变量。那么问题来了&#xff0c;为什么用栈来保存局部变量&#xff0c;不用别的数…

Go 语言函数、参数和返回值详解

函数是一组语句&#xff0c;可以在程序中重复使用。函数不会在页面加载时自动执行。函数将通过调用函数来执行。 创建函数 要创建&#xff08;通常称为声明&#xff09;一个函数&#xff0c;请执行以下操作&#xff1a; 使用 func 关键字。指定函数的名称&#xff0c;后跟括…

10年开发工程师总结,8大主流程序员兼职平台,月入30k不是梦!

今年互联网行业陆续裁员减薪&#xff0c;许多人怨声载道的同时也开始另谋出路。而对于程序员更是应该提早做好准备&#xff0c;活跃在兼职接单的最前沿。 我们程序员是一门技术工种&#xff0c;与互联网其他行业相比薪水会相对高一点&#xff0c;不过钱也不是那么好赚的&#…

2023年【广东省安全员B证第四批(项目负责人)】报名考试及广东省安全员B证第四批(项目负责人)复审考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 广东省安全员B证第四批&#xff08;项目负责人&#xff09;报名考试是安全生产模拟考试一点通总题库中生成的一套广东省安全员B证第四批&#xff08;项目负责人&#xff09;复审考试&#xff0c;安全生产模拟考试一点…

java:springboot单元测试spring-boot-starter-test

背景 Java的单元测试可以使用多个框架&#xff0c;其中比较流行的包括&#xff1a; JUnit&#xff1a;JUnit是Java单元测试最常用的框架&#xff0c;它提供了一套丰富的API&#xff0c;可以方便地编写测试用例和测试套件。JUnit 5是JUnit的最新版本&#xff0c;引入了许多新功…

各大电商平台双十一“狂飙”,如何选择商城系统?

今年是“双十一”的第十五年。作为各大平台和品牌的全年最重要的营销节点&#xff0c;品牌们可谓是来势汹汹&#xff0c;各种促销活动和优惠力度让人眼花缭乱。 淘天数据显示&#xff0c;天猫促销活动开售当晚&#xff0c;155个品牌开卖成交额突破1亿元&#xff1b;首小时内7.1…

str转wstr的三种方法和从网站获取json数据到数据随机提取,返回拼接字符串和动态数组

库的设置 hv库 外部包含目录&#xff1a;…\include\libhv_new\hv; 库目录&#xff1a;…\include\libhv_new\lib\x86\Release; 附加依赖项&#xff1a;hv.lib; //Get请求 获取json数据&#xff0c;然后提取符合 条件的&#xff0c;time值大于自定义变量的值&#xff0c;然后取…

【UE】用样条线实现测距功能(上)

目录 效果 步骤 一、创建样条网格体组件3D模型 二、实现点击连线功能 三、实现显示两点间距离功能 效果 步骤 一、创建样条网格体组件3D模型 创建一个圆柱模型&#xff0c;这里底面半径设置为10mm&#xff0c;高度设置为1000mm 注意该模型的坐标轴在如下位置&#xff1…

基于pytest的服务端http请求的自动化测试框架?

1、引言 我有一个朋友是做 Python 自动化测试的。前几天他告诉我去参加一个大厂面试被刷了。 我问他是有没有总结被刷下来的原因。他说面试官问了一些 pytest 单元测试框架相关的知识&#xff0c;包括什么插件系统和用力筛选。但是他所在的公司用的技术是基于 unittest 的&am…

Win10系统无法登录Xbox live的四种解决方法

在Win10系统中&#xff0c;用户可以登录Xbox live平台&#xff0c;畅玩自己喜欢的游戏。但是&#xff0c;有用户却遇到了无法登录Xbox live的问题。接下来小编给大家详细介绍四种简单的解决方法&#xff0c;解决后用户在Win10电脑上就能成功登录上Xbox live平台。 Win10系统无法…

Linux编程 文件操作 creat open

文件描述符 文件描述符在形式上是一个非负整数。实际上&#xff0c;它是一个索引值&#xff0c;指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时&#xff0c;内核向进程返回一个文件描述符。 启动一个进程之后&#xff0c;…

SquareCTF-2023 Web Writeups

官方wp&#xff1a;CTFtime.org / Square CTF 2023 tasks and writeups sandbox Description&#xff1a; I “made” “a” “python” “sandbox” “”“” nc 184.72.87.9 8008 先nc连上看看&#xff0c;只允许一个单词&#xff0c;空格之后的直接无效了。 flag就在当…