[NOTE] Pikachu靶场练习笔记
[NOTE] Pikachu靶场练习笔记
文章目录
- [NOTE] Pikachu靶场练习笔记
- 前言
- 暴力破解
- 基于表单的暴力破解
- 验证码绕过(on server)
- 验证码绕过(on client)
- token防爆破
- Burp Suite
- 第一种方法
- 第二种方法
- 两种方法比较
- 自写脚本
- Cross Site Scripting
- 概述
- 攻击者端
- cookie搜集
- 信息钓鱼
- 键盘记录
- 反射型XSS(GET)
- 反射型XSS(POST)
- 存储型XSS
- DOM型XSS
- DOM型XSS-X
- XSS之盲打
- XSS之过滤
- XSS之htmlspecialchars
- XSS之href输出
- XSS之JS输出
- 补充:其他一些钓鱼payload
- CSRF
- 概述
- CSRF(GET)
- CSRF(POST)
- CSRF Token
- SQL注入
- 概述
- 数字型注入(POST)
- 字符型注入(GET)
- 搜索型注入
- XX型注入
- “insert/update”注入
- “delete”注入
- “http header”注入
- 报错盲注
- 时间盲注
- 宽字节注入
- RCE
- 概述
- exec "ping"
- exec "evel"
- File Inclusion
- 概述
- local
- remote
- Unsafe Filedownload
- 概述
- 练习
- Unsafe Fileupload
- 概述
- client check
- MIME type
- getimagesize()
- Over Permission
- 概述
- 水平越权
- 垂直越权
- ../../
- 概述
- 练习
- 敏感信息泄露
- 概述
- I can see your ABC
- PHP反序列化
- 概述
- 练习
- XXE
- 概述
- 练习
- 不安全的URL重定向
- 概述
- 练习
- SSRF
- 概述
- curl
- file_get_content
- 总结
前言
是针对Pikachu靶场的联系笔记
是在搞完WebGoat之后
想着再找一个靶场玩玩
环境
攻击者:Kali Linux | 10.10.10.1
靶机:Ubuntu | 10.10.10.2 | PHP 5.5.38+Apache 2.4.39+MySQL 8.0.16(小皮面板)
暴力破解
从来没有哪个时代的黑客像今天一样热衷于猜解密码——奥斯特洛夫斯基
基于表单的暴力破解
直接爆破就完事了
一个启示:
最好能够根据网站本身,添加一些特殊字段
如网站名及其变式啥的,作为payload之一
(pikachu/pikachu)
验证码绕过(on server)
呃,倒是可以OCR
看眼提示:
这个验证码好像一直有效哎!
看看,发现只要用户没有请求新的验证码,上一个验证码就会一直有效
因此可以直接爆破
前提是发送请求的验证码要与页面显示的一致(保证没有请求新的验证码)
观察下验证码的元素:
前端是请求时加载一次,之后只有在点击时才重新刷新
刷新的参数好像是时间戳,但是传入固定的一个时间戳也会刷出不同的验证码
验证码绕过(on client)
验证码明文印在页面上???
哦没事了,验证码只是前端验证
验证码通过后的包直接抓上来重放就完事了
比上面那题还离谱
token防爆破
表单多了个隐藏field:
<input type="hidden" name="token" value="526966173722ea46a5804573073">
虽然是token,但是直接写在HTML上了
爆破方向:
- Burp Suite——定义宏操作每次请求更新token
- 自写脚本
Burp Suite
先写下使用Burp Suite的方法
日后考虑将这里搬去“Burp Suite进阶使用”之类的学习笔记
有两种做法
第一种方法
来自于这里
设置模式为“Pitchfork”(草叉模式),设定如下变量:
可以看到,用户名不作爆破
从响应包中抓取token的匹配值:
然后第二个payload,选择类型为“Recursive grep”,再选择刚提取的token变量:
然后注意爆破线程只能设置为1,因为要使用到提取的token值是单次传递的:
由于没有对用户名字段进行爆破,所以最后爆破结果仅针对admin:
另外试了试Cluster bomb对三个变量进行爆破,发现不太奏效
前面的请求中用户名和密码都有,但是token那块是空的
第二种方法
来自于g0tmi1k的文章
首先添加会话处理规则(Session Handling Rules):
Project options/Options
-> Sessions
-> Session Handling Rules
-> Add
这里定义的规则可以让Burp Suite在每次作出请求前
都检视下是否有对应的适用规则
defined scope for particular tools, URLs or parameters
输入规则描述,并选择规则行为为“Run a macro”(执行宏,因为要替换token):
Details
-> Rule Action
-> Add
-> Run a macro
这种规则会通过运行宏或发送一连串定义好的请求
并基于宏的运行结果或请求的返回,自定义地更新参数或cookies
选择新建一个宏:
Add
然后选择想要运行宏的请求包:
这里可以过滤出想要的请求包
要注意的是,记录宏会要求使用正在代理的浏览器,因此此时应该关闭拦截
然后进一步编辑这个宏:
Macro description
处可以填入这个宏的说明信息
点击Configure item
可以对某一选中的请求包进行宏操作编辑
可以对宏如何操作该请求包的cookie和参数等进行编辑
由于我们需要从每次响应中获取token
因此应该自定义一个响应参数:
Custom parameter locations in response
->Add
之后就是从请求包的响应中定义/提取我们要的参数的匹配模式/匹配位置:
Parameter name
中填入这个参数的参数名(任意填,可以是“fish”,不和要替换的请求参数匹配?)
【注意】这个参数名应当和我们想要替换的请求参数名相同,这样后续才能成功匹配上要替换/操作的请求参数
Start after expression
/End at delimiter
中填入参数值的左右界限,建议自己从响应中拖拽选中,这样Burp Suite会自动填入这两个字段
之后一路OK
,回到会话处理规则的宏操作定义处
- 这样我们就定义了一个会话处理规则
- 这个规则会执行一个宏操作
- 这个宏操作会对我们选定的请求的响应中提取一个token值
- 并把这个值存在自定义名字的参数中
最后勾选“允许URL不匹配”:
勾选Tolerate URL mismatch when matching parameters (use for URL-agnostic CSRF tokens)
最上面选中的是我们刚定义好的宏操作,作用是提取token的值
下面一个箭头指向,才是应用把token值替换到我们每次请求的token是把所有参数(即username、password、token甚至加上submit)都作指定的操作——更新/替换
再下面一个箭头指向,应该是起更新cookie的作用
之后选择该规则的监视目标以及使用范围:
Scope
->Tools Scope
->仅勾选Intruder
(因为我们只在爆破里用)
URL Scope
->Use suite scope [defined in Target tab]
(选择使用Burp Suite的监视窗,但理论上也能Use custom scope
,指定到Pikachu指定的页面就
[NOTE] Pikachu靶场练习笔记相关推荐
- [NOTE] XVWA靶场练习笔记
[NOTE] XVWA靶场练习笔记 文章目录 [NOTE] XVWA靶场练习笔记 前言 SQL Injection – Error Based 选择框 搜索栏 SQL Injection – Blin ...
- [NOTE] DSVW靶场练习笔记
[NOTE] DSVW靶场练习笔记 文章目录 [NOTE] DSVW靶场练习笔记 前言 Blind SQL Injection (boolean) Blind SQL Injection (time) ...
- Pikachu靶场通关笔记
目录 Burte Force(暴力破解) 基于表单的暴力破解 验证码绕过(on server) 验证码绕过(on client) token防暴破 Cross-Site Scripting (XSS) ...
- Pikachu靶场通关笔记--Sql Inject(SQL注入)
在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞.一个严重的SQL注入漏洞,可能会直接导致一家公司破产! SQL注入漏洞主要形成的原 ...
- [NOTE] Web For Pentester靶场练习笔记
[NOTE] Web For Pentester靶场练习笔记 文章目录 [NOTE] Web For Pentester靶场练习笔记 前言 Web基础 PHP的session管理 HTTP认证 Web ...
- 网络安全初学者工具安装:Kali,Windows xp虚拟机,pikachu靶场,burpsuite安装配置,phpstudy安装(学习笔记)
摘要 在互联网发展的时代背景下,网络安全成为了越来越不可忽视的重要领域,为此,各国都采取了维护网络安全的举措,对于网络安全人才的需求不断增大,我国作为世界上最多使用计算机人口的国家, ...
- Pikachu靶场全关攻略(超详细!)
一.靶场搭建 准备工具 phpstudy **pikachu靶场下载地址:**https://github.com/zhuifengshaonianhanlu/pikachu 搭建过程 将靶场文件夹放 ...
- Pikachu靶场通关记录(详细)
Pikachu靶场通关记录 0x01 靶场介绍 Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞. 如果你是一个Web渗透测试学习人员且正发愁没有合适的靶场进行练习,那么 ...
- pikachu靶场通关技巧详解
目录 一.暴力破解 二.Cross-Site Scripting(XSS跨站脚本攻击) 三.CSRF(跨站请求伪造) 四.SQL-Inject 五.RCE 六.File Inclusion(文件包含漏 ...
最新文章
- 机器人科迪的天空_机器人科迪的天空游戏评测:我要跳的更高
- Java8中的流操作-基本使用性能测试
- USACO crypt1
- 《计算机网络自顶向下》之重头戏迪杰斯特拉算法
- C++ primer 11章关联容器
- 开创先河!《王者荣耀国际版》成为东南亚运动会正式比赛项目
- Silverlight 中的 CoreCLR
- 流水线的几个指标总结
- Linux KVM构建及管理
- windows 打印机管理机制(任务后台等待机制)
- 用yolo-v3检测算法检测图片中的apple和damaged_apple
- redis IO模型的演进
- 项目管理必备工具——甘特图
- 【LeetCode】77 组合 (C++)
- PS新手如何快速抠白色背景的玻璃瓶
- 逆袭!Xbox One销量超PS4成英国游戏主机销售冠军
- Windows下搭建免费个人博客
- RED5流媒体服务器作为客户端转发流至另一个RED5服务器
- 利用githubpages创建你的个人博客
- 雷军谈人生三段低谷:站店卖货、泡吧泡论坛、错失互联网第一波浪潮!
热门文章
- 办理icp许可证对经营范围还有要求吗
- Please verify you invoked Maven from the correct directory错误解决
- Docer实现Django Uwsgi部署
- 【Android -- 架构】MVP 模式
- 微型计算机外部设备接口,第五章 微型计算机输入输出接口
- Composer 简介和基本用法
- jquery.qrcode.js生成二维码
- C#中取得日期的英文缩写
- Hinton论文系列-Reducing the dimensionality of data with neural networks
- 射影几何----共线四点保交比的三种射影变换类型的几何表示