PSIRT Advisory

SSL VPN buffer overrun when parsing javascript href content

Summary

A heap buffer overflow vulnerability in the FortiOS SSL VPN web portal may cause the SSL VPN web service termination for logged in users or potential remote code execution on FortiOS; this happens when an authenticated user visits a specifically crafted proxy-ed webpage, and this is due to a failure to handle javascript href content properly.


This only affects SSL VPN web-mode (SSL VPN tunnel-mode is not impacted)

Impact

Denial of service, Remote Code Execution

Affected Products

FortiOS 6.0.0 to 6.0.4

FortiOS 5.6.10 and below

Solutions

Upgrade to FortiOS 5.6.11, 6.0.5 or 6.2.0 and above.


Workarounds:


One of the following workarounds can be applied:


* Use SSL VPN tunnel-mode only.


* Only access trusted HTTP web servers under SSL VPN web-mode


* Totally disable the SSL-VPN service by applying the following CLI commands:

config vpn ssl settings
unset source-interface
end


Revision History:


2019-04-02 Initial Version
2019-05-15 Add fix on 6.0 branch
2019-07-11 Risk adjusted to High; Workaround updated.
2019-08-21 Add fix on 5.6 branch

Acknowledgement

Fortinet is pleased to thank Meh Chang and Orange Tsai from DEVCORE Security Research Team for reporting this vulnerability under responsible disclosure.