pikachu靶场(xss通关教程)

2024-05-12 20:28
文章标签 教程 pikachu 靶场 xss 通关

本文主要是介绍pikachu靶场(xss通关教程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(注:若复制注入代码攻击无效,请手动输入注入语句,在英文输入法下)

反射型xss(get型)

1.打开网站

发现有个框,然后我们在框中输入一个“1”进行测试,

可以看到提交的数据在url处有显示,在页面中也显示了相应的结果。

2.在输入框中插入我们的攻击语句

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

 

发现只能输入上面的字符,后面不能再输入了

此时有两种方法

第一种,在url栏中提交数据

访问发现没什么反应,那是因为在url栏中()要被编码

所以输入的数据应该是

<script>alert%28"xss"%29</script>

此时访问页面,则会出现弹窗 

第二种,鼠标右键单击当前页面,点击检查

以图中的序号为准,依次点击

会看到图中的位置有个maxlength,就是这个限制了输入框中输入的数据长度,把它的值改成2000,然后点击右上角关掉检查页面(注意,不是关闭浏览器页面)

就可以在框中输入我们的攻击语句

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

此时点击submit,页面同样会弹窗 

 反射型xss(post型)

1.打开网站

首先给了我们一个登陆框,在右上角点击提示,会出现用户名与密码,然后登录

2.登录之后在输入框输入1,点击提交

发现地址栏中没有输入的结果,

打开我们的抓包工具 

从请求头上可以看到提交方式为post

抓包看到了post提交的数据

3.在输入框中输入攻击语句

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

4.弹窗

存储型xss 

1.打开网站

2.直接在输入框中输入1,提交

可以看到数据保存在下方了,一般放在服务器上,

3.插入攻击语句,点击提交

攻击语句:<script>alert("xss")</script>

出现弹窗 ,而且因为是存在服务器上的,所以每次提交数据,都会被执行

4.输入admin,点击提交

也会弹窗

DOM型xss

1.打开网站,可以看到一个输入框

2.输入1提交

3.直接右键当前页面,点击检查

4.按顺序点击(快速定位到输入框的前端代码)

5.点击下图中的两个红色框

  

可以看到我们刚才输入的1变成了一个超链接

可以看到闭合符号为('),需要逃逸出来前面的超链接,闭合掉前面的<a>标签

6.构造攻击语句

'> <src='a' οnclick=alert(1)>

输入到输入框中,点击提交

 可以看到<a>标签被闭合了

7.点击超链接

8.就会出现弹窗

DOM型xss-x

和DOM型xss一样,检查,查看闭合符号,然后构造攻击语句。

在输入框中插入

'> <src='a' οnclick=alert(1)>

按照图中顺序点击,则会弹窗。

xss之盲打

1.打开网站

看到有框,秉承着有框就插的原理,注入我们的弹窗语句

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

2.点击提交,发现并没有弹窗

输入正常的语句也没有什么有用的显示,此时点击右上角的提示,它让我们登录后台看一下

 

3.点击提示,把框1中的地址复制到框2中

完整的地址应该是

localhost:8086/pikachu-master/vul/xss/xssblind/admin_login.php

可以看到出现了一个登陆框,输入账号密码,若不知道,可以点击右上角的提示查看

 

4. 登录之后可以看到出现弹窗。

xss之过滤

1.打开网站,直接插入攻击语句

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

看到输出的是这样,

当我们输入一个正常值,比如我爱学习

可以看到我们输入的值被放在单引号里面了,而我们的攻击语句只有>,说明他对我们的输入做了过滤。 

2.使用其他弹窗函数

比如:

<img src="x" οnerrοr=alert("xss")>

也可以用其他的弹窗函数。 

3.出现弹窗

xss之htmlspecialchars 

1.打开网站,输入注入语句

2.发现被记录在页面上

3.右键检查,发现变成了一个超链接

4.构造注入语句

 javascript:alert(1)

5.点击提交,点击下面的链接,出现弹窗

 

 xss之href输出

和上题类似,输入注入语句,右键检查,发现也是被记录在a标签的herf属性内

用注入语句

 javascript:alert(1)

 

点击框中的超链接,出现弹窗

 

xss之js输出 

1.打开网站,输入攻击语句

<script>alert(1)</script>

2.右键检查

 

发现我们输入的语句被放在了这里,而且后面的</script>标签和前面本身就有的<script>标签凑成了一对,导致我们的攻击语句不能正常运行,想办法闭合掉前面的<script>

3.构造攻击语句

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

4.点击提交,出现弹窗

 

这篇关于pikachu靶场(xss通关教程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/983656

相关文章

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑

在idea中使用mysql数据库超详细教程

《在idea中使用mysql数据库超详细教程》:本文主要介绍如何在IntelliJIDEA中连接MySQL数据库,并使用控制台执行SQL语句,还详细讲解了如何使用MyBatisGenerator快... 目录一、连接mysql二、使用mysql三、快速生成实体、接口、sql文件总结一、连接mysql在ID