LAMPSecurity: CTF4
字数 1250 2025-08-11 08:36:09
LAMPSecurity: CTF4 渗透测试教学文档
1. 环境部署
1.1 下载靶机
- 下载地址: https://download.vulnhub.com/lampsecurity/ctf4.zip
- 文件格式: ZIP压缩包
1.2 虚拟机配置
- 使用VMware搭建靶机环境
- 攻击机: Kali Linux (VMware虚拟机)
- 网络配置: 靶机和攻击机置于同一网段
2. 信息收集阶段
2.1 网络扫描
-
扫描网段寻找靶机IP:
netdiscover- 发现攻击机IP: 192.168.237.156
- 靶机IP: 192.168.237.162
-
使用nmap进行深度扫描:
nmap -sV -A 192.168.237.162- 开放端口:
- 22/tcp: SSH服务
- 25/tcp: SMTP服务
- 80/tcp: HTTP服务
- 开放端口:
2.2 Web服务枚举
-
访问80端口Web服务
-
检查robots.txt文件:
- 发现以下路径:
- /mail - 登录页面
- /restricted - 需要认证的页面
- /conf - 返回500错误
- /sql - SQL配置文件
- /admin - 管理员登录页面
- 发现以下路径:
-
分析/sql路径下的配置文件:
- 发现数据库连接信息:
- user: ehks
- password: [未显示]
- blog: 关联到主页的blog功能
- 发现数据库连接信息:
2.3 SQL注入漏洞发现
- 测试blog功能点是否存在SQL注入:
- 在URL参数中插入测试payload
- 确认存在SQL注入漏洞
3. 漏洞利用
3.1 SQL注入利用
-
使用sqlmap自动化工具:
sqlmap -u "http://192.168.237.162/blog?param=1" --dbs- 爆出数据库:
- ehks
- information_schema
- mysql
- performance_schema
- 爆出数据库:
-
重点查看ehks数据库:
sqlmap -u "http://192.168.237.162/blog?param=1" -D ehks --tables sqlmap -u "http://192.168.237.162/blog?param=1" -D ehks -T users --dump- 获取到明文凭证:
- 用户名: dstevens
- 密码: [明文密码]
- 获取到明文凭证:
3.2 SSH登录尝试
-
初始SSH登录失败:
ssh dstevens@192.168.237.162- 遇到密钥交换算法不兼容问题
-
解决方法:
ssh -o KexAlgorithms=+diffie-hellman-group-exchange-sha1 -o HostKeyAlgorithms=+ssh-rsa dstevens@192.168.237.162- 成功登录
3.3 权限提升
-
检查当前用户权限:
whoami id pwd- 确认是普通用户
-
检查sudo权限:
sudo -l- 发现可以无限制切换到root用户
-
提权:
sudo su- 输入dstevens的密码
- 成功获取root权限
4. 其他漏洞验证
4.1 XSS漏洞发现
- 路径: /admin → Post blog
- 漏洞类型: 反射型XSS
- 利用方式:
- 修改前端HTML代码
- 插入恶意脚本
- 成功触发弹窗
5. 总结与关键点
5.1 关键步骤
- 全面的信息收集(nmap, robots.txt)
- 配置文件泄露导致SQL注入点发现
- sqlmap自动化利用获取数据库凭证
- SSH特殊参数绕过连接限制
- sudo配置不当导致的简单提权
5.2 学习要点
- 细心分析每个发现的信息点(如/sql配置文件)
- 遇到连接问题时考虑协议/算法兼容性
- 检查sudo -l是提权的重要步骤
- 即使主要目标达成也应探索其他可能的漏洞
5.3 防御建议
- 避免在配置文件中存储敏感信息
- 实施严格的输入过滤防止SQL注入
- 合理配置sudo权限
- 更新SSH服务使用更安全的密钥交换算法
- 实施前端输入过滤防止XSS攻击