VideoLAN, a project and a non-profit organization.

Security Bulletin VLC 3.0.9

Summary           : Multiple vulnerabilities fixed in VLC media player
Date              : April 2020
Affected versions : VLC media player 3.0.0 to 3.0.8 for most issues
ID                : VideoLAN-SB-VLC-309
CVE references    : CVE-2019-19721 CVE-2020-6071 CVE-2020-6072 CVE-2020-6073 CVE-2020-6077 CVE-2020-6078 CVE-2020-6079

Details

A remote user could:

- Create a specifically crafted image file that could trigger an out of bounds read

- Send a specifically crafter request to the microdns service discovery, potentially triggering various memory management issues

Impact

If successful, a malicious third party could trigger either a crash of VLC or an arbitratry code execution with the privileges of the target user.

While these issues in themselves are most likely to just crash the player, we can't exclude that they could be combined to leak user informations or remotely execute code. ASLR and DEP help reduce the likelyness of code execution, but may be bypassed.

We have not seen exploits performing code execution through these vulnerabilities


CVE-2019-19721 affects VLC 3.0.8 and earlier, and only reads 1 byte out of bound

Threat mitigation

Exploitation of those issues requires the user to explicitly open a specially crafted file or stream.

Workarounds

The user should refrain from opening files from untrusted third parties or accessing untrusted remote sites (or disable the VLC browser plugins), until the patch is applied.

Until VLC gets updated to the 3.0.9 version, it is advised not to use the network discovery, including for chromecast

VLC-iOS

VLC on iOS suffered from an access to restricted folders (passcode feature) under the web interface without entering the passcode.

Solution

VLC media player 3.0.9 addresses the issues. The Android versions 3.2.12 and iOS 3.2.7 are addressing those issues too.

Credits

CVE-2019-19721 was reported by Antonio Morales from the Semmle Security Team.

CVE-2020-6071 CVE-2020-6072 CVE-2020-6073 CVE-2020-6077 CVE-2020-6078 CVE-2020-6079 were discovered & reported by Claudio Bozzato from Cisco Talos.

VLC iOS web interface issue was reported by Dhiraj Mishra.

Special thanks

VideoLAN would like to thank Antonio Morales and Claudio Bozzato for their time and cooperation with the VideoLAN security team

References

The VideoLAN project
http://www.videolan.org/
VLC official GIT repository
http://git.videolan.org/?p=vlc.git
VLC-iOS official GIT repository
https://code.videolan.org/videolan/vlc-ios