打靶记录28——Funbox2

靶机:

https://www.vulnhub.com/entry/funbox-rookie,520/

下载(镜像)https://download.vulnhub.com/funbox/Funbox2.ova

难度:

目标:

  • 获得 Root 权限

攻击方法:

  • 主机发现
  • 端口扫描
  • 信息收集
  • FTP 服务漏洞
  • 密码爆破
  • SSH 公钥认证
  • rbash 逃逸
  • 本地提权

主机发现

sudo arp-scan -l 扫描发现192.168.31.26 的靶机 IP

端口扫描和服务发现

sudo nmap -p- 192.168.31.26 全端口扫描发现开启了 21,22,80 这三个端口

sudo nmap -p21,22,80 -A 192.168.31.26 进行应用版本的发现

发现 FTP 服务开启了 Anonymous 匿名访问,里面有大量的 zip 格式的文件,从文件名可以看出可能是用户名称。

还有一个 welcome.msg 邮件

searchsploit ProFTPD 1.3.5 根据版本搜索一下漏洞库

FTP 服务漏洞

阅读代码发现是通过 FTP 的漏洞将 PHP 的 Webshell 的代码写入到 Web 服务的根路径里面,然后再通过浏览器或者是其他的命令行工具来触发这个 Webshell,实现命令执行

通过 FTP 的拷贝能力将恶意代码植入到 Web 根路径,生成一个 Webshell 的文件,然后再利用请求这个 Webshell 文件来执行操作系统的 cmd 命令

msfconsole 启动

msfconsole 是 Metasploit 框架的交互式命令行界面,而 Metasploit 是一款开源的、强大的渗透测试工具集,在网络安全领域应用广泛。

search proftpd 1.3.5

use 0
show options
info
set RHOSTS 192.168.31.26
set SITEPATH /var/www/html
show targets
show payloads
set payload /cmd/unix/generic
set CMD id
exploit

使用 msf 失败,可以是因为版本不对,目标是 1.3.5e 版本,多了个 e

也可能是目标靶机的管理员做了一些安全配置

也可能是靶机作者已经修补了该漏洞

努力了一大圈却还是失败,但是在真实渗透过程中是经常出现的,如果时间超过一个小时,就不要钻牛角尖了,把能做的都做了就行,至少排除了这个

FTP 匿名登录

ftp 192.168.31.26 使用 anonymous 账号,空密码登录,ls 查看文件

ls -la 发现还有两个隐藏文件,使用 mget * 都给它下载下来

get .@adminsget .@users 也下载下来

cd ../../ 始终在 ftp 的根路径下,跳不出到操作系统上

  • -necho 命令的一个选项,它的作用是在输出字符串时不添加换行符。这里使用 -n 是为了确保输出的 Base64 编码字符串是一个连续的、没有额外换行干扰的字符串,以便后续的 base64 命令能正确处理。

它说小心你的 key,它在用户名.zip 文件里面,那我们猜测可能是 SSH 的 key,如果能连上去,管理员应该是有 sudo 权限的,那我们就可以直接 su 成 root 账号了

解压的时候发现需要密码,而且里面的文件叫 id_rsa ,应该就是 SSH 的私钥了

使用 john 来破解压缩包密码,先 zip2john anna.zip > anna.hash 把压缩包转换一下,

john anna.hash --wordlist=/usr/share/wordlists/rockyou.txt 然后用 rockyou 这个比较大的字典来破解,因为前面有提示 The passwords are the old ones.

anna.zip 破解失败,最后只有 cathrine 和 tom 能破解出来,密码为 catwomaniubire

SSH 公钥认证

ssh tom@192.168.31.26 -i id_rsa 解压后用私钥直接登录 tom 账号

cat .mysql_history 查看数据库的操作记录

发现疑似 tom 账号的密码 xx11yy22!

sudo -s

  • -s:这是 sudo 命令的一个选项,-s 表示启动一个新的 shell 会话,并且这个 shell 会话会以超级用户的身份运行。当你执行 sudo -s 后,系统会提示你输入当前用户的密码(前提是你当前用户有使用 sudo 的权限),验证通过后,会打开一个新的 shell 环境,在这个环境中你可以执行任何需要超级用户权限的操作,就像直接以 root 用户身份登录一样。

但是想去到 /root 路径遇到了问题 ,提升 shell 的类型是 rbash

rbash 即受限的 Bash(Restricted Bash),它是 Bash shell 的一个受限版本

rbash 逃逸

sudo mysql -utom -pxx11yy22! 利用 mysql 来启动一个新的 shell

\! bash 即可

或者

  • 在一些编辑器中可以设置shell变量然后执行,如vim中

vim/vi进入之后

:set shell=/bin/sh # 或者用/bin/bash
:shell

posted @ 2025-02-13 12:42  Fab1an  阅读(36)  评论(0)    收藏  举报