数据库提权——UDF提权

数据库提权——UDF提权
最新回答
浅挚绊离兮

2022-02-01 05:32:32

UDF提权是通过MySQL的用户自定义函数(UDF)接口实现的。用户定义函数允许在MySQL中集粗好成外部功能,如自定义的函数,从而扩展数据库的功能。UDF提权需要具备以下条件:MySQL支持UDF扩展,能够调用DLL中的函数以实现特定功能;拥有MySQL数据库的账户,特别是insert和delete权限,以便创建和删除函数;具有将udf.dll文件写入特定目录的权限。

提权流程可以简化为以下几个步骤:首先,进行环境准备,包括将phpstudy服务设置为系统服务、将apache权限调整为普通用户、赋予apache用户对phpstudy目录的读写权限、修改mysql配置文件并重启mysql服务。然后,上传木马文件至网站胡凳带目录,并通过蚁剑工具连接网站。在虚拟终端中,检查当前用户身份,进入数据库操作。查看数据库版本和mysql导出路径,选择test库并创建表。插入数据,裤芦接着将数据以二进制流形式写入dll文件。创建自定义函数,比如`cmdshell`,返回字符串类型,并指定为soname "myudf.dll"。

验证函数权限,通过调用`cmdshell('whoami')`查询当前用户身份。添加新用户,使用`cmdshell('net user hacker admin@123 /add')`命令创建用户hacker,并设置密码admin@123。将新用户添加至管理员组,执行`cmdshell('net localgroup administrators hacker /add')`,赋予新用户管理员权限。