XSS漏洞:pikachu靶场中的XSS通关

目录

1、反射型XSS(get)

2、反射性XSS(POST)

3、存储型XSS

4、DOM型XSS

5、DOM型XSS-X

6、XSS之盲打

7、XSS之过滤

8、XSS之htmlspecialchars

9、XSS之href输出

10、XSS之js输出


最近在学习XSS漏洞,这里使用pikachu靶场中的SQL注入来复习+练习一下XSS漏洞

进入漏洞环境中可以看到有好几种类型,我们先点击到概述:

可以看到是这样介绍XSS漏洞的:

Cross-Site Scripting 简称为“CSS”,为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS。一般XSS可以分为如下几种常见类型:
    1.反射性XSS;
    2.存储型XSS;
    3.DOM型XSS;
XSS漏洞一直被评估为web漏洞中危害较大的漏洞,在OWASP TOP10的排名中一直属于前三的江湖地位。
XSS是一种发生在前端浏览器端的漏洞,所以其危害的对象也是前端用户。
形成XSS漏洞的主要原因是程序对输入和输出没有做合适的处理,导致“精心构造”的字符输出在前端时被浏览器当作有效代码解析执行从而产生危害。
因此在XSS漏洞的防范上,一般会采用“对输入进行过滤”和“输出进行转义”的方式进行处理:
  输入过滤:对输入进行过滤,不允许可能导致XSS攻击的字符输入;
  输出转义:根据输出点的位置对输出到前端的内容进行适当转义;

1、反射型XSS(get)

首先就是反射性的XSS,这个简单易懂,就是直接插入一个反弹代码,如果成功反弹了就是存在反射性XSS漏洞,可以看到这里的页面如下所示:

那么就可以尝试在输入框中输入一个<script>alert(1)</script>来验证一下

但是尝试发现输入框的长度有限制,我们需要将限制长度修改一下:

尝试后发现,修改完长度后,输入<script>alert(1)</script>后点击submit后成功弹窗了

2、反射性XSS(POST)

来到这一关,可以看到时一个登录框,是POST提交的方式

可以使用简单的暴力破解就可以知道账号密码时admin 123456 ,登录成功后的页面:

然后尝试进行弹窗:

可以看到成功的弹窗了

既然可以弹窗那么就可以尝试使用在线xss来获取更多信息:

XSS在线平台新建项目,生成xss代码:

将url放在弹窗处:

再去看xss在线平台就可以看到成功的获取到了信息:

3、存储型XSS

来到存储型xss模块中可以看到如下页面:

可以看到是一个留言板,那么尝试输入script代码:

可以看到弹窗了,后面再次刷新页面就会发现又弹窗了,这说明我们输入的内容插入到网站的后台数据库中了,如果在这里插入在线网站的获取cookie的js代码,那么后面所有查看该留言的所有用户的信息都会被我们获取到

4、DOM型XSS

来到这一关,可以看到如下页面:

可以看到是一个输入框,然后可以点击click me!

那么尝试输入一个弹窗代码试试看:

可以看到输入后,并没有弹窗,而是输出了一个链接,那么我就想起来之前学习过的使用a超链接来进行弹窗的方法,尝试一下:

对前面的gref标签进行闭合后,我们可以输入一个事件弹窗代码,然后将鼠标移动到图片上后就成功大弹窗了,也可以使用点击事件进行弹窗:

5、DOM型XSS-X

来到这一关,可以看到如下页面:

可以看到是一个输入框,后面写着“请说出你的伤心事”,有趣

尝试进行闭合弹窗:

点击链接可以看到跳转到下一个页面,成功弹窗了:

6、XSS之盲打

可以看到是一个意见提交页面,我们输入弹窗代码,然后看提示会发现后台地址,因此我们提交完评论后尝试访问后台登录地址:

可以看到输入后台登录账号密码后,直接进行了弹窗,这时如果登录的是管理员,我们就成功的可与拿到管理员的信息

7、XSS之过滤

来到这一关,尝试弹窗,可以看到好像输入的标签被过滤了,因此我们需要绕过后再进行弹窗,

通过不断地测试会发现使用大小写、事件弹窗都可以绕过限制成功弹窗:

接下来我们尝试大小写混合的方式来进行注入,成功弹窗。

<ScRipT>alert('xss')</ScRipT>

<img src=x onerror="alert(111)"/> 

8、XSS之htmlspecialchars

首先先来了解一下htmlspecialchars是什么:

htmlspecialchars是一种用于转义HTML特殊字符的函数,可以将一些特殊字符转换为HTML实体,防止恶意用户输入恶意代码导致安全漏洞。htmlspecialchars函数可以将特殊字符如<、>、&、"等转换为对应的HTML实体,从而确保在网页中显示这些字符时不会被解释为HTML代码。htmlspecialchars函数在PHP中常用于对用户输入的数据进行处理,以防止跨站脚本攻击(XSS)等安全问题。

那么说明这一关是有很严格的过滤的,因此还是需要绕过限制才能进行弹窗:

可以看到使用'闭合后,加上点击事件是可以成功弹窗的

9、XSS之href输出

href输出在a标签的herf属性里面,可以使用javascript协议来执行js 防御的时候只允许http或者https

因此我们可以利用js为协议来进行弹窗:

10、XSS之js输出

这一关通过不断尝试发现提前闭合<script>标签可以进行弹窗:

到此,pikachu靶场中的XSS相关的关卡就学习完毕了

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

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

相关文章

苹果CMS:怎么重新安装

当我们安装好苹果CMS之后苹果cms&#xff1a;介绍及安装&#xff0c;但是最好我们在安装的时候配置好对应配置后&#xff0c;备份一份&#xff0c;如果不记得哪里配置出了问题&#xff0c;出现一些不可预料的问题&#xff0c;那我们可以简单暴力的直接重新安装&#xff0c;我们…

Netty学习02----使用多线程优化Selector

背景前置 在单线程环境下&#xff0c;使用一个线程同时绑定多个事件&#xff1a;连接事件、读事件、写事件。不能充分发挥多核CPU的优势&#xff0c;考虑使用多个线程&#xff0c;每个线程专门负责处理不同的事件&#xff0c;如下图所示&#xff1a;一个线程专门负责连接&#…

【Spring Security系列】权限之旅:SpringSecurity小程序登录深度探索

作者&#xff1a;后端小肥肠 创作不易&#xff0c;未经允许严禁转载。 姊妹篇&#xff1a; 【Spring Security系列】Spring SecurityJWTRedis实现用户认证登录及登出_spring security jwt 退出登录-CSDN博客 1. 前言 欢迎来到【Spring Security系列】&#xff01;在当今数字化…

后端之路第二站(正片)——SprintBoot之:分层解耦

很抽象&#xff0c;我自己也不好理解&#xff0c;仅作为一个前端转后端的个人理解 一、先解释一个案例&#xff0c;以这个案例来分析“三层架构” 这里我先解释一下黑马程序员里的这个案例&#xff0c;兄弟们看视频的可以跳过这节课&#xff1a;Day05-08. 请求响应-响应-案例_…

OpenStack配置 之 不同cpu迁移虚拟机

介绍 OpenStack是一个开源的云计算管理平台项目&#xff0c;是一系列软件开源项目的组合。 OpenStack由NASA&#xff08;美国国家航空航天局&#xff09;和Rackspace合作研发并发起&#xff0c;以Apache许可证&#xff08;Apache软件基金会发布的一个自由软件许可证&#xff…

亚洲知名度最高的杰出代表人物颜廷利:人生的意义和生命的价值,只有‘四部曲’

在童年的田野里&#xff0c;玩耍是孩子们最纯粹的语言&#xff0c;他们通过释放天性探索世界的奥秘。如同小溪自由地流淌&#xff0c;孩童们在游戏中学会交流、合作&#xff0c;激发无限想象。这时期&#xff0c;他们如同种子一般&#xff0c;需要充足的阳光和水分&#xff0c;…

构建智能化的语言培训教育技术架构:挑战与机遇

随着全球化的发展和人们对语言学习需求的增长&#xff0c;语言培训教育行业正面临着越来越多的挑战和机遇。在这个背景下&#xff0c;构建智能化的语言培训教育技术架构成为提升服务质量和效率的重要手段。本文将探讨语言培训教育行业的技术架构设计与实践。 一、智能化教学平台…

电脑版网易云音乐听歌识曲

文章目录 流程 流程 电脑网易云音乐的搜索框旁边就是听歌识曲功能

[datawhale202405]从零手搓大模型实战:TinyAgent

结论速递 TinyAgent项目实现了一个简单的Agent智能体&#xff0c;主要是实现了ReAct策略&#xff08;推理调用工具的能力&#xff09;&#xff0c;及封装了一个Tool。 项目实现有一定的疏漏。为了正确运行代码&#xff0c;本次对代码Agent部分进行了简单修改&#xff08;完善…

数据清洗(ETL)案例实操

文章目录 数据清洗&#xff08;ETL&#xff09;概述案例需求和分析代码实现和结果分析 数据清洗&#xff08;ETL&#xff09;概述 “ETL&#xff0c;是英文Extract-Transform-Load的缩写&#xff0c;用来描述将数据从来源端经过抽取&#xff08;Extract&#xff09;、转换&…

事务管理控制

文章目录 1. 事务的基本概念2. 数据库的并发控制2.1 事务调度2.2 并发操作带来的问题2.3 并发调度的可串行性2.4 并发控制技术2.5 两段锁协议2.6 多粒度封锁协议 3. 数据库的备份与恢复3.1 数据库系统故障3.2 数据库的备份3.3 数据库的恢复 4. 数据库的安全性与完整性4.1 数据库…

mongoengine,一个非常实用的 Python 库!

更多Python学习内容&#xff1a;ipengtao.com 大家好&#xff0c;今天为大家分享一个超酷的 Python 库 - mongoengine。 Github地址&#xff1a;https://github.com/MongoEngine/mongoengine 在现代应用程序开发中&#xff0c;NoSQL数据库因其灵活性和高性能而广受欢迎。MongoD…

Oracle 证书的重要性

随着信息技术的飞速发展&#xff0c;数据库管理已成为企业运营中不可或缺的一部分。Oracle作为全球领先的数据库管理系统提供商&#xff0c;其Oracle Certified Professional&#xff08;OCP&#xff09;认证已成为数据库管理员和开发人员追求的专业认证之一。本文将深入探讨Or…

前端工程化07-常见的包管理工具npm、yarn、cnpm、npx、pnpm

8、包管理工具 8.1、包管理工具概述 npm包管理工具、在安装node的时候这个东西就已经安装过了&#xff0c;通过npm去管理包的时候这个时候回有一个配置文件叫做package.json,他是以json的方式来书写对应的一个配置文件&#xff0c;这个配置文件是可以添加特别多的一些字段的&…

前端-移动端布局

如何在PC端模拟移动端设备 可以在浏览器里打开检查 点击一下移动端按钮 然后选择一下对应的手机型号可以切换到对应的手机端 响应式布局实现方法 Viewport Flex 弹性盒子 Flex容器属性 flex-direction flex-wrap justify-content align-items align-content 进阶学习建议 Vu…

【网络版本计算器的实现】

本章重点 理解应用层的作用, 初识HTTP协议理解传输层的作用, 深入理解TCP的各项特性和机制对整个TCP/IP协议有系统的理解对TCP/IP协议体系下的其他重要协议和技术有一定的了解学会使用一些分析网络问题的工具和方法 ⭐注意!! 注意!! 注意!! 本课是网络编程的理论基础.是一个服务…

那些网络安全上的事实,很多人不见得知道!

明月发现不少小白对网络安全的认知几乎为零&#xff0c;甚至明月还碰到一个说 VPN 能彻底隐匿自己的&#xff0c;至于现在这帮动不动就利用 DDos/CC 攻击被人网站来推销境外高防服务器、高防 CDN 的老鼠屎们更是网络安全知识白痴的水平&#xff0c;破坏和攻击的水平完全取决于能…

零一万物Yi-1.5开源,34B/9B/6B多尺寸,34B超Qwen1.5-72B

前言 近年来&#xff0c;大型语言模型&#xff08;LLM&#xff09;在各个领域展现出惊人的能力&#xff0c;为人们的生活和工作带来了巨大的改变。然而&#xff0c;大多数开源 LLM 的性能仍然无法与闭源模型相媲美&#xff0c;这限制了 LLM 在科研和商业领域的进一步应用。为了…

详细分析crontab定时执行任务(附Demo | 定时清空Tomcat的实战)

目录 前言1. 基本知识2. Demo3. 实战3.1 错误版本3.2 正确版本 前言 由于用户量大&#xff0c;且导出的日志以及缓存特别多&#xff0c;急需定期删除文件 1. 基本知识 crontab 是一个用于定时执行任务的命令行工具&#xff0c;通常在 Unix 和类 Unix 系统中可用&#xff0c;表…