首页 > 其他分享 >pikachu靶场搭建

pikachu靶场搭建

时间:2024-10-16 17:13:17浏览次数:1  
标签:pikachu phpstudy 漏洞 镜像 docker 靶场 搭建

写在前面

  • “如果你想搞懂一个漏洞,比较好的方法是:你可以自己先制造出这个漏洞(用代码编写),然后再利用它,最后再修复它”。
  • Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。 如果你是一个Web渗透测试学习人员且正发愁没有合适的靶场进行练习,那么Pikachu可能正合你意。

Pikachu上的漏洞类型列表如下:

  • Burt Force(暴力破解漏洞)
  • XSS(跨站脚本漏洞)
  • CSRF(跨站请求伪造)
  • SQL-Inject(SQL注入漏洞)
  • RCE(远程命令/代码执行)
  • Files Inclusion(文件包含漏洞)
  • Unsafe file downloads(不安全的文件下载)
  • Unsafe file uploads(不安全的文件上传)
  • Over Permisson(越权漏洞)
  • ../../../(目录遍历)
  • I can see your ABC(敏感信息泄露)
  • PHP反序列化漏洞
  • XXE(XML External Entity attack)
  • 不安全的URL重定向
  • SSRF(Server-Side Request Forgery)
  • 管理工具
  • More...(找找看?..有彩蛋!)

管理工具里面提供了一个简易的xss管理后台,供你测试钓鱼和捞cookie,还可以搞键盘记录!~

后续会持续更新一些新的漏洞进来,也欢迎你提交漏洞案例给我,最新版本请关注pikachu

每类漏洞根据不同的情况又分别设计了不同的子类

同时,为了让这些漏洞变的有意思一些,在Pikachu平台上为每个漏洞都设计了一些小的场景,点击漏洞页面右上角的"提示"可以查看到帮助信息。

使用Dockers 搭建靶场

  • 安装docker
  • 因为我使用的是kali 这里就直接安装了
apt-get install docker.io
  • 搜索 pikachu 的镜像容器
┌──(root㉿kali)-[/home/kali]
└─# docker search pikachu
NAME                        DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED        
area39/pikachu              https://github.com/zhuifengshaonianhanlu/pik…   13
vulfocus/pikachu                                                            1
monstertsl/pikachu          Pikachu是一个带有漏洞的Web应用靶场镜像                        1
unnotechpromotion/pikachu                                                   0
howhacker/pikachu           pikachu靶场                                       0
foolderek/pikachu           pikachu                                         0
hominsu/pikachu             Pikachu pre-built docker environments, suppo…   0
sibei/pikachu                                                               0
unnotechums/pikachu                                                         0
xenny/pikachu                                                               0
cuer/pikachu                Pikachu是一个带有漏洞的Web应用系统,在这里包…                    0
vulshare/pikachu                                                            0
hirune924/pikachu           https://github.com/hirune924/pikachu/blob/ma…   0
johncada27/pikachu                                                          0
cyruswireless/pikachu                                                       0
tanyiqu/pikachu                                                             0
alexanso/pikachu                                                            0
alexchnggt/pikachu                                                          0
newbee740/pikachu                                                           0
745184472/pikachu           https://github.com/zhuifengshaonianhanlu/pik…   0                    
bihuoedu/pikachu                                                            0
startian/pikachu                                                            0
garydmcdowell/pikachu                                                       0
fighthawk/pikachu                                                           0
intemd/pikachu                                                              0
  • 下载 指定的 镜像 并在后台启动
docker run -itd -p 虚拟机的端口:容器端口 --name=自定义镜像名 镜像名
docker run -itd -p 8080:80 --name=pikachu area39/pikachu
  • 查看下载好的镜像
┌──(root㉿kali)-[/home/kali]
└─# docker ps -a
CONTAINER ID   IMAGE              COMMAND     CREATED        STATUS        PORTS                                             NAMES
8f15f158638e   area39/pikachu     "/run.sh"   2 months ago   Up 2 months   3306/tcp, 0.0.0.0:8080->80/tcp, :::8080->80/tcp   pikachu
  • 关闭镜像
docker stop 镜像ID
sudo docker stop 镜像ID
  • 开启镜像
docker start 镜像ID
sudo docker start 镜像ID
  • 进入容器内部
sudo docker exec -it 9156c  /bin/bash

使用phpstudy

  • 不使用 docker 容器 也是可以的
  • 首先需要下载靶场的源码和phpstudy 一般是需要PHP 和 mysql 的 环境 如果不使用phpstudy 使用其他的环境也是可以的比如Xampp WAMP 等
    github pikachu靶场
  • 如果进不去可以去国内的站点去找 这里我选了一个
    gitee pikachu靶场
  • 我这里使用的是 phpstudy 做例子 其他的和这个差不多 可以自行探索
  • 找到 phpstudy 的 文件目录
    img
  • 将靶场的源码解压至 phpstudy 的 www 目录后启动 apache 以及 mysql
  • 打开浏览器访问 http://localhost/pikachu/
  • 我这里的启动端口是 80 所以可以直接访问 如果你的启动端口不是 80 那么就需要加上端口号
  • 这样就可以看到 首页了
    img
  • 可以看到主页的上方有一行小字
  • 提示:欢迎使用,pikachu还没有初始化,点击进行初始化安装!
  • 我们打开 D:\phpstudy_pro\WWW\pikachu\inc\config.inc.php
<?php
//全局session_start
session_start();
//全局居设置时区
date_default_timezone_set('Asia/Shanghai');
//全局设置默认字符
header('Content-type:text/html;charset=utf-8');
//定义数据库连接参数
define('DBHOST', '127.0.0.1');//将localhost或者127.0.0.1修改为数据库服务器的地址
define('DBUSER', 'root');//将root修改为连接mysql的用户名
define('DBPW', 'root');//将root修改为连接mysql的密码,如果改了还是连接不上,请先手动连接下你的数据库,确保数据库服务没问题在说!
define('DBNAME', 'pikachu');//自定义,建议不修改
define('DBPORT', '3306');//将3306修改为mysql的连接端口,默认tcp3306
?>
  • 按照注释 将你的数据库用户名和密码 填入对应的位置
  • 修改完成之后 重启 apachce 服务器 点击 首页上方的那一行小字
    img
  • 点击安装/初始化 按钮
    img
  • 看到提示就代表完成了 靶场就可以使用了
  • Docker 也是一样的配置步骤 只不过不同的是 dockers 不需要配置 直接点击 安装/初始化 就可以了

标签:pikachu,phpstudy,漏洞,镜像,docker,靶场,搭建
From: https://www.cnblogs.com/ZapcoMan/p/18470353

相关文章

  • vite+ts搭建的项目,@配置失效的解决办法
    今天创建新项目,按照往常的管理去配置@别名安装依赖:因为path是node中的模块,node又不支持ts,所以:yarnadd@types/node或者npmi@types/node然后进vite.config.ts,添加添加@别名resolve:{alias:{'@':resolve(__dirname,'src')}}其实到这里,就可以......
  • OS-Nachos实验环境的搭建
    实验目的:按照实验教程在本地虚拟机搭建Nachos开发环境;安装docker,下载镜像搭建基于docker的Nachos开发环境;使用./nachos–u学习nachos的用法,并对相关命令选项进行尝试;使用nachos–x选项加载test目录下编译为noff格式的用户程序运行,思考nachos执行结果错误的原因;使用gdb......
  • 【AIGC】AI Agent 和 AI Workflow 的区别,Agent搭建
    Agent详解引言AIAgent和AIWorkflow的区别1.定义与功能2.自主性与灵活性3.应用场景AIWorkflowAIAgent详解基本特征分类应用场景dify搭建简单的agent结语引言随着AI的不断进步,我们见证了多种不同类型的AI概念的出现。其中,AIAgent和AIWorkflow是两个经常......
  • Linux环境搭建vsftpd服务
    vsftpd(verysecureFTPdaemon)是一个广泛使用的、开源的FTP服务器软件,以其高性能、高安全性和稳定性著称,支持多种FTP相关协议,包括FTP、SFTP(通过SSH)、TLS/SSL加密的FTP等。一:安装vsftpd#安装vsftpd服务yuminstallvsftpd-y#启动FTP服务,并设置开机自启动systemctlenablev......
  • 基于cloudreve(Docker应用)搭建网盘服务,用于目录的分享和在线预览。
    文章目录I基于cloudreve(Docker应用)搭建网盘服务安装主要功能设置角色最大容量II知识扩展:网盘类的文件预览需求背景:iOS可以直接预览PDF等常见格式文件,但是Android浏览器需要先下载文件,才能查看文件内容,因此需要搭建支持目录的分享和在线预览的Min......
  • Exchange 2016与国内版O365混合部署(2):搭建域环境
    Exchange2016与国内版O365混合部署(2):搭建域环境安装DC:远程登录虚机后,打开servermanager,选择“addrolesandfeatures ”,一直下一步: 到"serverroles"这个环节,注意勾选ADDS和DNS两个选项,一直下一步,直到完成。 安装完成后,servermanager的右上角会弹出一个警告:升级......
  • RabbitMQ的搭建
    RabbitMQ网址端口15672步骤一:导入依赖<!--AMQP依赖,包含RabbitMQ--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></depende......
  • 博客搭建之路:hexo使用next主题博客侧边栏标题点击不跳转
    hexo使用next主题博客侧边栏标题点击不跳转hexo版本5.0.2npm版本6.14.7next版本7.8.0本着我肯定不是第一个出这个问题的人,去github上找了找,果然我不是第一个好吧,也跟着改吧(修改themes/next/source/js/utils.js),找到registerSidebarTOC函数registerSidebarTOC:functio......
  • 【CTF Web】Pikachu 不安全的url跳转 Writeup(URL重定向+代码审计)
    不安全的url跳转不安全的url跳转问题可能发生在一切执行了url地址跳转的地方。如果后端采用了前端传进来的(可能是用户传参,或者之前预埋在前端页面的url地址)参数作为了跳转的目的地,而又没有做判断的话就可能发生"跳错对象"的问题。url跳转比较直接的危害是:–>钓鱼,......
  • 【CTF Web】Pikachu SSRF(curl) Writeup(SSRF+读取文件+探测端口)
    SSRF(Server-SideRequestForgery:服务器端请求伪造)其形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制导致攻击者可以传入任意的地址来让后端服务器对其发起请求,并返回对该目标地址请求的数据数据流:攻击者-----......