Kali Linux 实战:一站式部署 Pikachu 靶场环境
2026/5/13 15:22:07 网站建设 项目流程

1. 为什么选择Kali Linux部署Pikachu靶场

如果你刚开始学习网络安全,一定会被各种专业术语和复杂环境搞得晕头转向。我当年也是这样,直到发现了Pikachu这个"神奇宝贝"——它把常见的Web漏洞都打包成了一个直观的靶场环境。而Kali Linux作为渗透测试的"瑞士军刀",自带300+安全工具,简直是绝配。

实测下来,这套组合有三大优势:

  • 开箱即用:Kali预装了Apache、MySQL等必备服务
  • 工具链完整:从信息收集到漏洞利用的工具一应俱全
  • 学习曲线平缓:Pikachu的漏洞案例都有详细说明

最近帮学弟配置环境时,发现网上教程要么太老,要么缺关键步骤。下面我就把踩过的坑和优化方案都整理出来,保证你20分钟内就能玩转这个靶场。

2. 环境准备与基础配置

2.1 更新Kali系统

刚安装好的Kali就像没磨过的刀,得先开刃。打开终端执行:

sudo apt update && sudo apt upgrade -y sudo apt install -y git curl vim

这里有个细节要注意:如果遇到"Unable to locate package"错误,可能是源有问题。我习惯用阿里云的镜像源,速度更快:

sudo sed -i 's|http.kali.org|mirrors.aliyun.com/kali|g' /etc/apt/sources.list

2.2 安装LAMP环境

Pikachu需要PHP和MySQL支持,但Kali 2023默认没装全。用这个命令一键搞定:

sudo apt install -y apache2 mysql-server php libapache2-mod-php php-mysql

安装完成后,建议做个安全检查:

  1. 给MySQL设置root密码:sudo mysql_secure_installation
  2. 测试PHP解析:在/var/www/html新建test.php,写入<?php phpinfo();?>
  3. 浏览器访问http://localhost/test.php应该能看到版本信息

3. 部署Pikachu靶场

3.1 下载与配置

直接从GitHub克隆最新版(国内用户可以用Gitee镜像):

cd /var/www/html sudo git clone https://github.com/zhuifengshaonianhanlu/pikachu.git sudo chown -R www-data:www-data pikachu

关键点来了:很多教程没提权限问题。www-data是Apache的默认用户,不设置权限会导致页面报错。

3.2 数据库初始化

Pikachu需要先建数据库。我推荐用命令行操作:

sudo mysql -u root -p CREATE DATABASE pikachu; GRANT ALL PRIVILEGES ON pikachu.* TO 'pikachu'@'localhost' IDENTIFIED BY 'pikachu'; FLUSH PRIVILEGES;

然后导入数据结构:

mysql -u pikachu -p pikachu < /var/www/html/pikachu/pikachu.sql

4. 常见问题排查

4.1 页面显示异常

如果访问http://localhost/pikachu出现乱码或空白页,按这个顺序检查:

  1. Apache是否运行:sudo systemctl status apache2
  2. PHP模块是否加载:sudo a2enmod php7.4(根据版本调整)
  3. 错误日志位置:tail -f /var/log/apache2/error.log

4.2 数据库连接失败

配置文件在/var/www/html/pikachu/inc/config.inc.php,确保这些参数正确:

$dbuser = 'pikachu'; $dbpass = 'pikachu'; $dbname = 'pikachu';

遇到过最坑的情况是MySQL 8.0的加密方式变更,解决方法:

sudo mysql -u root -p ALTER USER 'pikachu'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pikachu';

5. 靶场功能体验指南

部署成功后,你会看到这些经典漏洞演示:

  • SQL注入:包括数字型、字符型、搜索型等多种变体
  • XSS攻击:存储型、反射型、DOM型完整案例
  • CSRF:银行转账模拟场景
  • 文件包含:本地包含与远程包含对比

每个漏洞都有"漏洞概述"、"漏洞利用"和"漏洞防御"三个模块。建议先用Burp Suite抓包观察请求,再结合源码理解原理。比如SQL注入部分,你可以看到错误回显是如何泄露数据库结构的。

6. 安全加固建议

虽然是本地环境,但好习惯要从小培养:

  1. 修改默认密码:别再用pikachu/pikachu这样的弱口令
  2. 限制访问IP:编辑/etc/apache2/sites-available/000-default.conf,添加:
    <Directory "/var/www/html/pikachu"> Require ip 192.168.1.0/24 </Directory>
  3. 定期备份数据库:mysqldump -u pikachu -p pikachu > pikachu_backup.sql

这套环境我用了三年,带过上百个学生。最大的心得是:不要只停留在点击"攻击"按钮,要深入理解每个漏洞背后的代码逻辑。比如尝试修改Pikachu的防御代码,比较不同防护方案的效果差异。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询