type
status
date
slug
summary
tags
category
icon
password
Empire Breakout
靶机地址:https://www.vulnhub.com/entry/hack-me-please-1,731/
攻击机ip:192.168.108.50
靶机ip: 192.168.108.131
信息收集
端口扫描与Web服务发现

图片.png
发现开了三个端口
![[Empire-Breakout/图片 1.png]]
先去正常访问一下
![[Empire-Breakout/图片 2.png]]
源码分析与Brainfuck解密
发现是apache默认页面,看一下源码
![[Empire-Breakout/图片 3.png]]
翻到最后面发现一段加密信息,这里用的是Brainfuck 语言编写的代码片段,像这钟伪装加密很好破解,破解完是
扫描一下端口,没发现什么东西,139和455则为Windows 文件共享(SMB 协议)端口,尝试访问10000和20000
![[Empire-Breakout/图片 4.png]]
![[Empire-Breakout/图片 5.png]]
发现是两个不同的登录系统,一个是Webmin一个是用户的,尝试万能密码和弱密码,查看页面源码,无果
结合之前拿到了用户的password,接下来的任务应该就是找用户名了
SMB枚举
尝试扫描发现报错,查了发现是kali默认使用smb1,而且大部分都目标服务器都默认禁用了 SMB1(因为存在安全问题,例如永恒之蓝)
解决方案:使用
smbclient
加上 --option
强制使用较新的协议:发现两个共享文件夹,尝试枚举,首先print
发现匿名(
-N
)无法访问 print$
共享目录也就是说目标 Samba 服务开启了访问控制
尝试访问ipc发现成功连接接下来尝试利用 IPC$ 进行枚举和信息收集,可以使用
rpcclient
连接 IPC$ 来枚举信息,也可以用enum4linux-ng
自动化信息收集,这里选择用enum4linux-ng
它会自动尝试 Null Session 登录,并收集:
- SMB 版本
- 主机名/工作组/域名
- 用户列表
- 共享资源
- 操作系统信息
?这里用
enum4linux-ng
没出来,用enum4linux
出来了总结一下,
用户枚举成功(RID 循环)
cyber
(Unix 本地用户,UID=1000)
nobody
(Samba默认用户)
None
(组名,看起来像是默认/无分组)
这意味着系统中至少存在一个有效本地用户
cyber
初始访问
Webmin登录
有用户有密码,登录20000端口
![[Empire-Breakout/图片 6.png]]
成功进入,一番搜寻之后拿到了第一个flags
![[Empire-Breakout/图片 7.png]]
权限提升
利用Tar能力读取敏感文件
继续提权,先查看第二个文件,发现隶属于root文件下,也就是说,在一个普通用户的主目录中有一个 由 root 拥有、可执行的 tar 程序副本
![[Empire-Breakout/图片 8.png]]
发现不是suid程序,那就换个思路,查看一下文件能力
![[Empire-Breakout/图片 9.png]]
这个
tar
程序启用了 Linux 的 capability(能力位) cap_dac_read_search
,并设置为 ep
(effective + permitted)
这是 Linux 的一种特权能力,允许进程绕过文件系统的读/执行权限检查,相当于让它能读取/搜索本不属于它的目录或文件内容尝试将etc下面的shadow打包出来
密码破解与备份文件发现
这是 Yescrypt 格式的密码哈希(以
$y$
开头),是现代 Linux(如 Shadow >= v4.8)默认采用的一种更安全的哈希方式yescrypt的加密hashcat尚不能稳定破解,这里使用john,发现也爆不出来
看教程说是在/var/backups下有一个密码的备份文件
获取Root权限
拿到root密码尝试登录,发现一到输入密码就打断,无法直接登录
反弹一个shell到kali上,再尝试登录,成功拿到最后一个flags
- Author:axlfpe
- URL:https://tlifecafe.xyz/article/94f327e7-13ac-4a9a-a7ea-ea18bd1374f3
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!