拓冰建站拓冰建站
首页 / 资讯中心 / 正文

如何从零搭建一个专属渗透测试环境(Kali + 靶场 + 代理全流程)|保姆级附全部命令

你是不是也这样想入门渗透测试第一步就卡在了搭环境上——VMware 装完蓝屏、Kali 更新源慢到怀疑人生、靶场 Docker 起不来、Burp 抓包一直提示证书错误……网上的教程东一块西一块要么只讲 Kali 安装要么只讲 Burp 配置从来没有人把虚拟机 Kali 靶场 代理 验证这条完整链路一次性讲透。这篇文章我把自己踩过的所有坑全部填平给你一份从零到一、可直接复制执行的渗透测试环境搭建全流程。跟着做2 小时内拥有一套属于自己的练功房。建议先点赞收藏搭环境时对着一步步敲少走弯路。一、准备工作选对工具少踩一半坑1.1 虚拟机软件怎么选虚拟机软件优点缺点适合人群VMware Workstation Pro性能好、快照功能强、兼容性最佳收费个人非商用免费绝大多数人首选VirtualBox完全免费、开源性能略逊、部分硬件兼容性差预算有限/喜欢开源Hyper-VWindows 自带、无需额外安装配置复杂、与 VMware 冲突高级用户/Windows Server新手推荐VMware Workstation Pro个人非商用可免费使用官网注册即可下载。1.2 硬件配置建议配置项最低要求推荐配置说明内存8GB16GBKali 占 4GB靶场占 2-4GB宿主机还要留余量硬盘100GB 可用256GB SSD虚拟机文件 靶场镜像 工具SSD 体验天差地别CPU4 核8 核虚拟化技术VT-x/AMD-V必须在 BIOS 中开启网络稳定宽带—下载 Kali 镜像和 Docker 镜像需要网络关键检查开机进 BIOS确认 Intel VT-x 或 AMD-V 已开启。没开虚拟化虚拟机卡到根本没法用。1.3 整体环境架构组件作用部署位置默认 IP/端口Kali Linux渗透测试主系统工具全家桶虚拟机192.168.x.xNAT 模式Docker容器引擎用于一键起靶场Kali 内部—DVWAWeb 漏洞练习靶场Docker 容器127.0.0.1:80Pikachu中文 Web 漏洞靶场Docker 容器127.0.0.1:8080Vulhub真实 CVE 复现环境集合Docker 容器组按漏洞不同Burp Suite抓包改包代理工具Kali 内置127.0.0.1:8080Firefox/Chrome测试浏览器配置代理Kali 内置—二、Kali Linux 安装与初始化2.1 下载 Kali 镜像去 Kali 官网下载最新版 ISO 镜像https://www.kali.org/get-kali/#kali-installer选择Kali Linux 64-Bit (Installer)文件约 4GB。下载慢的话用国内镜像源# 清华大学镜像 https://mirrors.tuna.tsinghua.edu.cn/kali-images/ # 中科大镜像 https://mirrors.ustc.edu.cn/kali-images/2.2 VMware 中创建虚拟机关键配置项一览配置项推荐值说明客户机操作系统Linux → Debian 11.x 64位Kali 基于 Debian内存4096MB4GB最低 2GB推荐 4GB处理器2 核开启虚拟化 Intel VT-x硬盘60GB单文件存储动态分配即可网络适配器NAT共享宿主机 IP能上网USB 控制器USB 3.1兼容外接无线网卡网络模式选择新手用NAT 模式最省心虚拟机通过宿主机上网安全隔离。后续做内网渗透实验时再切换到仅主机模式或自定义网段。2.3 安装过程中的关键选项安装步骤选择说明语言中文简体新手友好主机名kali默认即可域名留空—用户名/密码自定义记牢别用弱口令磁盘分区guided - 使用整个磁盘新手别搞 LVM简单直接软件选择默认全部勾选Xfce 桌面 全部工具GRUB 安装是安装到 /dev/sda别选错磁盘2.4 换国内源装完第一件事Kali 默认源在国外apt update能卡到你怀疑人生。换清华源# 1. 备份原源文件 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak # 2. 写入清华源kali-rolling 分支 echo deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main non-free contrib | sudo tee /etc/apt/sources.list echo deb-src http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main non-free contrib | sudo tee -a /etc/apt/sources.list # 3. 更新并升级 sudo apt update sudo apt upgrade -y # 4. 清理无用包 sudo apt autoremove -y国内源对照表镜像站sources.list 地址清华大学http://mirrors.tuna.tsinghua.edu.cn/kali中科大http://mirrors.ustc.edu.cn/kali阿里云http://mirrors.aliyun.com/kali浙江大学http://mirrors.zju.edu.cn/kali2.5 安装常用补充工具Kali 自带工具已经很全但以下几个建议额外装上# 安装 Docker靶场必备 sudo apt install -y docker.io docker-compose sudo systemctl enable docker --now sudo usermod -aG docker $USER # 把当前用户加入 docker 组免 sudo # 执行完重新登录或 newgrp docker 生效 # 安装 Git拉取靶场和工具 sudo apt install -y git # 安装中文输入法可选 sudo apt install -y fcitx fcitx-googlepinyinDocker 换国内镜像加速拉取靶场镜像快 10 倍sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json EOF { registry-mirrors: [ https://docker.m.daocloud.io, https://dockerproxy.com, https://docker.mirrors.ustc.edu.cn ] } EOF sudo systemctl daemon-reload sudo systemctl restart docker docker info | grep -A5 Registry Mirrors # 验证是否生效三、靶场搭建你的专属练功房3.1 本地靶场总览靶场覆盖漏洞难度启动方式端口DVWAWeb 漏洞全家桶入门Docker80PikachuWeb 漏洞中文入门Docker8080Sqli-labsSQL 注入专项入门-进阶Docker8081Upload-labs文件上传专项入门Docker8082Vulhub真实 CVE 复现进阶Docker Compose按漏洞Vulfocus漏洞复现聚合进阶Docker80833.2 一键拉起 DVWA最经典入门靶场# 拉取并启动 DVWA docker run -d --name dvwa -p 80:80 vulnerables/web-dvwa # 验证 docker ps | grep dvwa启动后浏览器访问http://127.0.0.1默认账号admin/password登录后点击底部Create / Reset Database初始化数据库。DVWA 难度调节难度说明建议Low完全无防护漏洞直给新手先打这个理解原理Medium有基础过滤可绕过掌握原理后挑战High过滤更严格需要技巧进阶练习Impossible理论上不可利用学习正确的防御写法3.3 一键拉起 Pikachu中文友好靶场docker run -d --name pikachu -p 8080:80 area39/pikachu访问http://127.0.0.1:8080全中文界面漏洞分类清晰特别适合国内新手。3.4 专项靶场SQL 注入 文件上传# SQLi-labs80 关注入练习 docker run -d --name sqli-labs -p 8081:80 acgpiano/sqli-labs # Upload-labs上传绕过专项 docker run -d --name upload-labs -p 8082:80 c0ny1/upload-labs3.5 Vulhub真实 CVE 复现环境Vulhub 是目前最全的漏洞复现环境集合基于 Docker Compose每个漏洞一个目录一键启动。# 克隆 Vulhub git clone https://github.com/vulhub/vulhub.git cd vulhub # 以 phpMyAdmin CVE-2016-5734 为例 cd phpmyadmin/CVE-2016-5734 docker compose up -d # 查看启动的容器和端口 docker compose ps # 用完销毁释放资源 docker compose down -vVulhub 常用漏洞分类速查分类代表漏洞对应目录Web 中间件Apache Log4j2、Nginx 解析漏洞log4j/、nginx/数据库MySQL 提权、Redis 未授权mysql/、redis/框架ThinkPHP RCE、Spring Cloudthinkphp/、spring/CMSWordPress、Discuz、PHPCMSwordpress/、discuz/运维工具Jenkins、GitLab、Confluencejenkins/、gitlab/3.6 靶场管理常用命令操作命令查看运行中的容器docker ps查看所有容器含停止的docker ps -a停止某个容器docker stop 容器名或ID启动已停止的容器docker start 容器名或ID删除容器docker rm -f 容器名或ID查看容器日志docker logs 容器名或ID进入容器内部docker exec -it 容器名或ID /bin/bash一键停止所有容器docker stop $(docker ps -q)四、代理配置Burp Suite 抓包全流程Burp Suite 是 Web 渗透的核心工具Kali 已内置。抓包的本质是浏览器 → Burp 代理 → 目标服务器所有流量经过 Burp 时可以拦截、修改、重放。4.1 代理架构说明环节地址作用浏览器配置代理指向 127.0.0.1:8080发送请求Burp Proxy 监听器127.0.0.1:8080拦截浏览器流量Burp 引擎内部修改/重放/扫描请求目标服务器靶场地址127.0.0.1:80接收请求并响应4.2 Burp 监听器配置启动 Burp SuiteKali 菜单 → Web 应用程序 → burpsuite用临时项目启动配置步骤操作说明1. 进入 Proxy → Options确认 Proxy Listeners默认已有 127.0.0.1:80802. 检查监听器状态Running 列打勾灰色说明端口被占用换端口3. 确认 Intercept 状态Proxy → Intercept → Intercept is on开启拦截请求会暂停等你操作4. 可选绑定所有接口Add → Bind to port 8080 → All interfaces手机/其他设备抓包时需要端口冲突排查如果 8080 被占用比如 Pikachu 靶场也用了 8080把 Burp 监听器改成 8081 或其他空闲端口浏览器代理也要同步改。4.3 浏览器代理配置推荐用FirefoxKali 自带代理配置独立不影响系统。配置步骤操作路径1. 打开 Firefox 设置右上角菜单 → 设置2. 搜索代理网络设置 → 设置3. 选择手动代理手动代理配置4. 填写 HTTP 代理127.0.0.1端口 80805. 勾选也用于 HTTPS勾选此项HTTPS 流量也走代理6. 清空不代理列表删除不使用代理的地址里的 127.0.0.17. 保存确定关键坑点Firefox 默认把127.0.0.1和localhost加入了不使用代理列表导致访问本地靶场时不走 Burp。必须删掉这两个地址否则抓不到本地靶场的包4.4 HTTPS 证书安装抓 HTTPS 的关键不装证书访问 HTTPS 网站会报您的连接不是私密连接。Burp 作为中间人需要它的根证书被浏览器信任。# 1. 确保 Burp 已启动且监听器在 127.0.0.1:8080 # 2. 浏览器访问 http://burp Burp 的证书下载页 # 3. 点击 CA Certificate 下载 cacert.der # 4. Firefox 设置 → 隐私与安全 → 证书 → 查看证书 # 5. 证书机构 → 导入 → 选择下载的 cacert.der # 6. 勾选信任此 CA 以识别网站 → 确定证书安装验证清单验证项预期结果访问https://www.baidu.com正常打开无证书警告Burp → Intercept 开启百度请求被拦截能看到明文Forward 放行请求页面正常加载HTTP 历史记录Proxy → HTTP history 有记录4.5 抓包测试验证整条链路用 DVWA 做一次完整抓包测试# 1. 确认 DVWA 在运行 docker ps | grep dvwa # 2. 确认 Burp 监听器在运行 # Burp → Proxy → Options → 127.0.0.1:8080 状态 Running # 3. 确认浏览器代理已配置 # Firefox → 网络设置 → 手动代理 127.0.0.1:8080 # 4. 浏览器访问 http://127.0.0.1 # 5. Burp → Intercept 应该拦截到请求点击 Forward 放行 # 6. 登录 DVWAadmin/password观察 Burp 拦截到 POST 请求 # 7. Proxy → HTTP history 能看到所有请求记录抓包链路验证表检查点正常表现异常排查浏览器能打开靶场页面正常加载检查靶场容器是否运行、端口是否正确Burp 能拦截请求Intercept 显示请求内容检查浏览器代理设置、Burp 监听器端口HTTPS 无警告正常打开 HTTPS 网站重新安装 Burp CA 证书Forward 后页面响应页面正常加载检查靶场是否正常、网络是否通HTTP history 有记录能看到历史请求检查代理是否生效、是否被不代理列表排除五、环境整体验证确认练功房就绪5.1 一键验证脚本把下面这段保存为check_env.sh运行后自动检查所有组件#!/bin/bash echo 渗透测试环境验证 # 检查 Kali 版本 echo -n [1] Kali 版本: grep VERSION /etc/os-release | head -1 | cut -d -f2 # 检查 Docker echo -n [2] Docker 状态: systemctl is-active docker # 检查 DVWA echo -n [3] DVWA 靶场: docker ps --format {{.Names}} | grep -q dvwa echo 运行中 (http://127.0.0.1) || echo 未启动 # 检查 Pikachu echo -n [4] Pikachu 靶场: docker ps --format {{.Names}} | grep -q pikachu echo 运行中 (http://127.0.0.1:8080) || echo 未启动 # 检查 Burp 端口需手动启动 Burp echo -n [5] Burp 代理端口 8080: ss -tlnp | grep -q :8080 echo 被占用Burp 或其他服务 || echo 空闲请启动 Burp # 检查 Vulhub echo -n [6] Vulhub 目录: [ -d ~/vulhub ] echo 已克隆 (~/vulhub) || echo 未克隆 echo 验证完成 运行方式chmod x check_env.sh ./check_env.sh5.2 环境就绪标准组件就绪标准Kali 系统能正常启动、apt update 成功、中文显示正常Dockerdocker ps无报错、当前用户免 sudoDVWA浏览器访问 127.0.0.1 能打开登录页Pikachu浏览器访问 127.0.0.1:8080 能打开Burp启动后 8080 端口监听、浏览器代理后能拦截请求HTTPS 证书访问 HTTPS 网站无证书警告Vulhub任意漏洞目录docker compose up -d能成功启动全部达标你的专属渗透测试练功房就正式建成了。六、常见问题排查踩坑合集问题现象可能原因解决方案虚拟机启动蓝屏/黑屏BIOS 未开启虚拟化重启进 BIOS开启 Intel VT-x / AMD-Vapt update报错或极慢源在国外/源配置错误换国内源检查 sources.list 格式Docker 启动失败服务未启用/权限不足sudo systemctl enable docker --now用户加入 docker 组docker pull超时未配置镜像加速配置 daemon.json 国内镜像源靶场容器启动后访问不了端口映射错误/容器内服务未起docker logs 容器名查看日志docker ps确认端口映射Burp 抓不到本地靶场的包浏览器不代理列表含 127.0.0.1删除不代理列表里的 127.0.0.1 和 localhostHTTPS 网站报证书错误Burp CA 证书未安装/未信任重新下载 cacert.der 并导入 Firefox 证书机构Burp 端口 8080 被占用其他服务用了 8080Burp 换端口或 ss -tlnp虚拟机无法上网网络模式配置错误切换为 NAT 模式检查 VMware 服务是否启动Kali 中文显示方块未装中文字体sudo apt install -y fonts-wqy-microhei复制粘贴虚拟机和宿主机不通VMware Tools 未安装sudo apt install -y open-vm-tools-desktop重启Vulhubdocker compose命令不存在旧版 Docker 用 docker-compose用docker-compose up -d带横杠或升级 Docker七、下一步学习路线环境搭好了别让它吃灰。按这个顺序练阶段内容对应靶场/工具预计周期第 1 周HTTP 协议基础 Burp 抓包改包DVWA (Low) Burp1 周第 2-3 周SQL 注入原理与手工注入Sqli-labs Burp SQLMap2 周第 4 周XSS / CSRF / 文件上传漏洞DVWA Pikachu Upload-labs1 周第 5-6 周SSRF / XXE / 反序列化 / 逻辑漏洞Pikachu Vulhub 对应漏洞2 周第 7-8 周综合靶场实战 写渗透报告DVWA (High) Vulhub 任意 CVE2 周持续CTF 刷题 SRC 挖洞BUUCTF / 补天 / 漏洞盒子长期尾言搭环境是渗透测试的第一步也是最容易劝退的一步。很多人卡在这一步就放弃了觉得连环境都搭不起来我可能不适合学安全。但说实话搭环境跟天赋无关只跟耐心有关。照着这篇文章一步步敲遇到问题对照第六章排查表2 小时内一定能搭好。环境搭好之后今晚就做一件事打开 Burp拦截一次 DVWA 的登录请求把用户名改成别的Forward 放行看看会发生什么。就从这一次抓包开始。最后网络安全需要学习那些知识网络安全零基础入门学习路线规划初级1、网络安全理论知识2天①了解行业相关背景前景确定发展方向。②学习网络安全相关法律法规。③网络安全运营的概念。④等保简介、等保规定、流程和规范。非常重要2、渗透测试基础一周①渗透测试的流程、分类、标准②信息收集技术主动/被动信息搜集、Nmap工具、Google Hacking③漏洞扫描、漏洞利用、原理利用方法、工具MSF、绕过IDS和反病毒侦察④主机攻防演练MS17-010、MS08-067、MS10-046、MS12-20等3、操作系统基础一周①Windows系统常见功能和命令②Kali Linux系统常见功能和命令③操作系统安全系统入侵排查/系统加固基础4、计算机网络基础一周①计算机网络基础、协议和架构②网络通信原理、OSI模型、数据转发流程③常见协议解析HTTP、TCP/IP、ARP等④网络攻击技术与网络安全防御技术⑤Web漏洞原理与防御主动/被动攻击、DDOS攻击、CVE漏洞复现5、数据库基础操作2天①数据库基础②SQL语言基础③数据库安全加固6、Web渗透1周①HTML、CSS和JavaScript简介②OWASP Top10③Web漏洞扫描工具④Web渗透工具Nmap、BurpSuite、SQLMap、其他菜刀、漏扫等恭喜你如果学到这里你基本可以从事一份网络安全相关的工作比如渗透测试、Web 渗透、安全服务、安全分析等岗位如果等保模块学的好还可以从事等保工程师。薪资区间6k-15k到此为止大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗想要入坑黑客网络安全的朋友给大家准备了一份282G全网最全的网络安全资料包免费领取7、脚本编程初级/中级/高级在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中面对复杂多变的网络环境当常用工具不能满足实际需求的时候往往需要对现有工具进行扩展或者编写符合我们要求的工具、自动化脚本这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中想要高效地使用自制的脚本工具来实现各种目的更是需要拥有编程能力.零基础入门建议选择脚本语言Python/PHP/Go/Java中的一种对常用库进行编程学习 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP IDE强烈推荐Sublime ·Python编程学习学习内容包含语法、正则、文件、 网络、多线程等常用库推荐《Python核心编程》不要看完 ·用Python编写漏洞的exp,然后写一个简单的网络爬虫 ·PHP基本语法学习并书写一个简单的博客系统 熟悉MVC架构并试着学习一个PHP框架或者Python框架 (可选) ·了解Bootstrap的布局或者CSS。8、超级黑客这部分内容对零基础的同学来说还比较遥远就不展开细说了贴一个大概的路线。网络安全工程师企业级学习路线视频配套资料国内外网安书籍、文档工具当然除了有配套的视频同时也为大家整理了各种文档和书籍资料工具并且已经帮大家分好类了。一些我自己买的、其他平台白嫖不到的视频教程要学习网安其实不难难的是坚持和相信自己我的经验是既然已经选定网安你就要相信它相信它能成为你日后进阶的高效渠道这样自己才会更有信念去学习才能在碰到困难的时候坚持下去。机会属于有准备的人这是一个实力的时代。人和人之间的差距不在于智商而在于如何利用业余时间只要你想学习什么时候开始都不晚不要担心这担心那你只需努力剩下的交给时间这份完整版的学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门