当前位置:首页 > 安全预警 > 正文

Fortigate SSL VPN漏洞预警

发布时间:2019-08-17 19:40:41,来源:中国信息通信研究院

      一、基本情况

Fortigate SSL VPN存在多个安全漏洞。CVE编号:CVE-2018-13379、CVE-2018-13381、CVE-2018-13382、CVE-2018-13383、CVE-2018-13380。攻击者可以利用相应漏洞获取账号密码、修改账号密码和多洞结合获取系统SHELL。

      二、漏洞描述

Fortinet FortiOS是美国飞塔(Fortinet)公司的一套专用于FortiGate网络安全平台上的安全操作系统。该系统为用户提供防火墙、防病毒、VPN、Web内容过滤和反垃圾邮件等多种安全功能。

FortinetFortiOS缓冲区溢出漏洞(CVE-2018-13383):

Fortigate SSL VPN的某个页面在获取对应国家的语言文件时,会使用URL中的lang参数去构建要读取的文件名:

1.png

该操作没有相应的保护措施,会直接附加文件扩展名。看似只能读取json文件,但实际上我们可以欺骗snprintf的特性。snprintf最多会将size-1大小的数据写入输出字符串中,因此,只需要让数据超过缓冲区大小,就可以剔除.json扩展名,从而实现任意文件读取。

攻击者可在未经身份验证的情况下利用该漏洞直接读取VPN认证信息,并在通过VPN认证后利用缓冲区溢出漏洞(CVE-2018-13383)获取系统权限,从而进一步威胁企业内网服务。

FortinetFortiOS路径遍历漏洞(CVE-2018-13379):

漏洞源于该系统未能正确地过滤资源或文件路径中的特殊元素,导致攻击者可以利用该漏洞访问受限目录以外的位置。Fortinet FortiOS 5.6.3版本至5.6.7版本、6.0.0版本至6.0.4版本中的SSLVPN 受此漏洞影响。

FortinetFortiOS跨站脚本攻击漏洞(CVE-2018-13380):

漏洞源于WEB应用缺少对客户端数据的正确验证,导致攻击者可利用该漏洞执行客户端代码。Fortinet FortiOS 6.0.0版本至6.0.4版本、5.6.0版本至5.6.7版本、5.4及之前版本中的SSL VPN 受此漏洞影响。

FortinetFortiOS未授权访问漏洞(CVE-2018-13382):

漏洞源于该系统中缺少身份验证措施或身份验证强度不足,导致攻击者可以修改任意用户的密码。Fortinet FortiOS 6.0.0版本至6.0.4版本、5.6.0版本至5.6.8版本、5.4.1版本至5.4.10版本受此漏洞影响。

      三、影响范围

CVE-2018-13379:FortiOS 5.6.3 至 5.6.7、FortiOS 6.0.0 至 6.0.4 版本

CVE-2018-13381:FortiOS 6.0.0至6.0.4、FortiOS 5.6.0至5.6.7 、FortiOS 5.4及以下版本

CVE-2018-13382:FortiOS 6.0.0至6.0.4 、FortiOS 5.6.0至5.6.8 、FortiOS 5.4.1至5.4.10版本

CVE-2018-13383:FortiOS 所有低于6.0.5 的版本

CVE-2018-13380:FortiOS 6.0.0至6.0.4 、FortiOS 5.6.0至5.6.7、 FortiOS 5.4及以下版本

      四、处置建议

目前,Fortigate官方已发布升级补丁,建议用户尽快升级,官方补丁链接如下:

https://fortiguard.com/psirt/FG-IR-18-384

https://fortiguard.com/psirt/FG-IR-18-387

https://fortiguard.com/psirt/FG-IR-18-389

https://fortiguard.com/psirt/FG-IR-18-388

https://fortiguard.com/psirt/FG-IR-18-383

      五、参考链接

https://blog.orange.tw/2019/08/attacking-ssl-vpn-part-2-breaking-the-fortigate-ssl-vpn.html?m=1