【THM】offensive-Vulnversity
字数 1227 2025-08-29 08:29:58
Vulnversity 渗透测试教学文档
1. 信息收集阶段
1.1 Nmap 扫描
Nmap 是一个功能强大的网络扫描工具,用于发现主机和服务。以下是关键扫描参数:
nmap -sVC xx.xx.xx.xx -sC
参数解释:
-sV:尝试确定服务版本-p <x>或-p-:扫描指定端口或所有端口-Pn:禁用主机发现,直接扫描开放端口-A:启用OS和版本检测,执行内置脚本-sC:使用默认Nmap脚本扫描-v:详细模式-sU:UDP端口扫描-sS:TCP SYN端口扫描
扫描结果:
- 开放端口:21(FTP)、22(SSH)、139(NetBIOS)、445(SMB)、3128(Squid代理)、3333(Web服务)
- Squid代理版本:3.5.12
- 操作系统:Ubuntu
1.2 Gobuster 目录扫描
Gobuster 是一个用于暴力破解URI(目录和文件)的工具。
安装:
sudo apt-get install gobuster
基本用法:
gobuster dir -u http://xxx.xx.x.xx:3333 -w /usr/share/wordlists/dirbuster/directory-list-1.0.txt
参数解释:
-e:打印完整URL-u:目标URL-w:单词列表路径-u和-P:基本认证的用户名和密码-p <x>:用于请求的代理-c <httpCookie>:指定用于模拟认证的Cookie-x:指定要枚举的扩展名-t:指定并发线程数dir:指定扫描目录和文件
Kali Linux 默认单词列表位置:
/usr/share/wordlists/dirbuster/directory-list-1.0.txt
2. 服务分析
2.1 Squid 代理 (3128端口)
- 版本:3.5.12
- 潜在漏洞:旧版本可能存在已知漏洞,需检查CVE数据库
2.2 Web 服务 (3333端口)
- 需要进一步枚举目录结构
- 可能存在的上传点可用于获取shell
3. 渗透测试步骤
-
初始扫描:
- 使用Nmap进行完整端口扫描和服务识别
- 记录所有开放端口和服务版本
-
Web应用枚举:
- 使用Gobuster查找隐藏目录
- 重点关注可能的上传点(如/upload、/admin等)
- 检查Web应用框架和版本
-
服务漏洞利用:
- 检查Squid代理3.5.12版本的已知漏洞
- 检查SMB(445端口)和NetBIOS(139端口)的配置漏洞
- 测试FTP(21端口)是否允许匿名登录
-
权限提升:
- 通过找到的上传点获取初始访问权限
- 在系统内部进行横向移动和权限提升
4. 安全建议
-
服务加固:
- 更新Squid代理到最新版本
- 关闭不必要的服务(如NetBIOS)
-
Web应用安全:
- 限制目录遍历
- 实施严格的上传文件验证
- 禁用目录列表
-
网络配置:
- 使用防火墙限制对管理服务的访问
- 考虑更改默认端口
5. 扩展工具
除了Nmap和Gobuster,还可以考虑使用:
- Nikto:Web服务器漏洞扫描器
- Metasploit:针对特定服务的漏洞利用
- Hydra:暴力破解工具,可用于测试弱凭证
6. 注意事项
- 渗透测试前确保获得合法授权
- 扫描可能触发目标系统的安全警报
- 避免在生产环境中使用激进扫描参数
- 记录所有测试步骤和结果,便于报告编写