ID CVE-2016-1897
Summary FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the concat protocol in an HTTP Live Streaming (HLS) M3U8 file, leading to an external HTTP request in which the URL string contains the first line of a local file.
References
Vulnerable Configurations
  • FFmpeg 2.0
    cpe:2.3:a:ffmpeg:ffmpeg:2.0
  • FFmpeg 2.0.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.1
  • FFmpeg 2.0.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.2
  • FFmpeg 2.0.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.3
  • FFmpeg 2.0.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.4
  • FFmpeg 2.0.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.5
  • FFmpeg 2.0.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.6
  • FFmpeg 2.0.7
    cpe:2.3:a:ffmpeg:ffmpeg:2.0.7
  • FFmpeg 2.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.1
  • FFmpeg 2.1.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.1
  • FFmpeg 2.1.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.2
  • FFmpeg 2.1.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.3
  • FFmpeg 2.1.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.4
  • FFmpeg 2.1.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.5
  • FFmpeg 2.1.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.6
  • FFmpeg 2.1.7
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.7
  • FFmpeg 2.1.8
    cpe:2.3:a:ffmpeg:ffmpeg:2.1.8
  • FFmpeg 2.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.2
  • FFmpeg 2.2.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.1
  • FFmpeg 2.2.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.2
  • FFmpeg 2.2.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.3
  • FFmpeg 2.2.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.4
  • FFmpeg 2.2.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.5
  • FFmpeg 2.2.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.6
  • FFmpeg 2.2.7
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.7
  • FFmpeg 2.2.8
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.8
  • FFmpeg 2.2.9
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.9
  • FFmpeg 2.2.10
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.10
  • FFmpeg 2.2.11
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.11
  • FFmpeg 2.2.12
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.12
  • FFmpeg 2.2.13
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.13
  • FFmpeg 2.2.14
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.14
  • FFmpeg 2.2.15
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.15
  • FFmpeg 2.2.16
    cpe:2.3:a:ffmpeg:ffmpeg:2.2.16
  • FFmpeg 2.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.3
  • FFmpeg 2.3.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.3.1
  • FFmpeg 2.3.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.3.2
  • FFmpeg 2.3.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.3.3
  • FFmpeg 2.3.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.3.4
  • FFmpeg 2.3.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.3.5
  • FFmpeg 2.3.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.3.6
  • FFmpeg 2.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.4
  • FFmpeg 2.4.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.1
  • FFmpeg 2.4.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.2
  • FFmpeg 2.4.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.3
  • FFmpeg 2.4.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.4
  • FFmpeg 2.4.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.5
  • FFmpeg 2.4.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.6
  • FFmpeg 2.4.7
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.7
  • FFmpeg 2.4.8
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.8
  • FFmpeg 2.4.9
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.9
  • FFmpeg 2.4.10
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.10
  • FFmpeg 2.4.11
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.11
  • FFmpeg 2.4.12
    cpe:2.3:a:ffmpeg:ffmpeg:2.4.12
  • FFmpeg 2.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.5
  • FFmpeg 2.5.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.1
  • FFmpeg 2.5.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.2
  • FFmpeg 2.5.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.3
  • FFmpeg 2.5.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.4
  • FFmpeg 2.5.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.5
  • FFmpeg 2.5.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.6
  • FFmpeg 2.5.7
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.7
  • FFmpeg 2.5.8
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.8
  • FFmpeg 2.5.9
    cpe:2.3:a:ffmpeg:ffmpeg:2.5.9
  • FFmpeg 2.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.6
  • FFmpeg 2.6.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.6.1
  • FFmpeg 2.6.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.6.2
  • FFmpeg 2.6.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.6.3
  • FFmpeg 2.6.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.6.4
  • FFmpeg 2.6.5
    cpe:2.3:a:ffmpeg:ffmpeg:2.6.5
  • FFmpeg 2.6.6
    cpe:2.3:a:ffmpeg:ffmpeg:2.6.6
  • FFmpeg 2.7
    cpe:2.3:a:ffmpeg:ffmpeg:2.7
  • FFmpeg 2.7.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.7.1
  • FFmpeg 2.7.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.7.2
  • FFmpeg 2.7.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.7.3
  • FFmpeg 2.7.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.7.4
  • FFmpeg 2.8
    cpe:2.3:a:ffmpeg:ffmpeg:2.8
  • FFmpeg 2.8 Dev
    cpe:2.3:a:ffmpeg:ffmpeg:2.8:dev
  • FFmpeg 2.8.1
    cpe:2.3:a:ffmpeg:ffmpeg:2.8.1
  • FFmpeg 2.8.2
    cpe:2.3:a:ffmpeg:ffmpeg:2.8.2
  • FFmpeg FFmpeg 2.8.3
    cpe:2.3:a:ffmpeg:ffmpeg:2.8.3
  • FFmpeg 2.8.4
    cpe:2.3:a:ffmpeg:ffmpeg:2.8.4
  • Canonical Ubuntu Linux 12.04 LTS
    cpe:2.3:o:canonical:ubuntu_linux:12.04:-:-:-:lts
  • openSUSE Leap 42.1
    cpe:2.3:o:opensuse:leap:42.1
CVSS
Base: 4.3 (as of 07-12-2016 - 14:02)
Impact:
Exploitability:
CWE CWE-200
CAPEC
  • Subverting Environment Variable Values
    The attacker directly or indirectly modifies environment variables used by or controlling the target software. The attacker's goal is to cause the target software to deviate from its expected operation in a manner that benefits the attacker.
  • Footprinting
    An attacker engages in probing and exploration activity to identify constituents and properties of the target. Footprinting is a general term to describe a variety of information gathering techniques, often used by attackers in preparation for some attack. It consists of using tools to learn as much as possible about the composition, configuration, and security mechanisms of the targeted application, system or network. Information that might be collected during a footprinting effort could include open ports, applications and their versions, network topology, and similar information. While footprinting is not intended to be damaging (although certain activities, such as network scans, can sometimes cause disruptions to vulnerable applications inadvertently) it may often pave the way for more damaging attacks.
  • Exploiting Trust in Client (aka Make the Client Invisible)
    An attack of this type exploits a programs' vulnerabilities in client/server communication channel authentication and data integrity. It leverages the implicit trust a server places in the client, or more importantly, that which the server believes is the client. An attacker executes this type of attack by placing themselves in the communication channel between client and server such that communication directly to the server is possible where the server believes it is communicating only with a valid client. There are numerous variations of this type of attack.
  • Browser Fingerprinting
    An attacker carefully crafts small snippets of Java Script to efficiently detect the type of browser the potential victim is using. Many web-based attacks need prior knowledge of the web browser including the version of browser to ensure successful exploitation of a vulnerability. Having this knowledge allows an attacker to target the victim with attacks that specifically exploit known or zero day weaknesses in the type and version of the browser used by the victim. Automating this process via Java Script as a part of the same delivery system used to exploit the browser is considered more efficient as the attacker can supply a browser fingerprinting method and integrate it with exploit code, all contained in Java Script and in response to the same web page request by the browser.
  • Session Credential Falsification through Prediction
    This attack targets predictable session ID in order to gain privileges. The attacker can predict the session ID used during a transaction to perform spoofing and session hijacking.
  • Reusing Session IDs (aka Session Replay)
    This attack targets the reuse of valid session ID to spoof the target system in order to gain privileges. The attacker tries to reuse a stolen session ID used previously during a transaction to perform spoofing and session hijacking. Another name for this type of attack is Session Replay.
  • Using Slashes in Alternate Encoding
    This attack targets the encoding of the Slash characters. An attacker would try to exploit common filtering problems related to the use of the slashes characters to gain access to resources on the target host. Directory-driven systems, such as file systems and databases, typically use the slash character to indicate traversal between directories or other container components. For murky historical reasons, PCs (and, as a result, Microsoft OSs) choose to use a backslash, whereas the UNIX world typically makes use of the forward slash. The schizophrenic result is that many MS-based systems are required to understand both forms of the slash. This gives the attacker many opportunities to discover and abuse a number of common filtering problems. The goal of this pattern is to discover server software that only applies filters to one version, but not the other.
Access
VectorComplexityAuthentication
NETWORK MEDIUM NONE
Impact
ConfidentialityIntegrityAvailability
PARTIAL NONE NONE
nessus via4
  • NASL family SuSE Local Security Checks
    NASL id OPENSUSE-2016-94.NASL
    description This update to ffmpeg 2.8.5 fixes the following issues : - CVE-2016-1897: Cross-origin issue in URL processing (concat) - local file disclosure (boo#961937) - CVE-2016-1898: Cross-origin issue in URL processing (subfile) - local file disclosure (boo#961937)
    last seen 2019-02-21
    modified 2016-10-13
    plugin id 88400
    published 2016-01-27
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=88400
    title openSUSE Security Update : ffmpeg (openSUSE-2016-94)
  • NASL family Gentoo Local Security Checks
    NASL id GENTOO_GLSA-201705-08.NASL
    description The remote host is affected by the vulnerability described in GLSA-201705-08 (libav: Multiple vulnerabilities) Multiple vulnerabilities have been discovered in libav. Please review the CVE identifiers referenced below for details. Impact : A remote attacker could entice a user to open a specially crafted media file in an application linked against libav, possibly resulting in execution of arbitrary code with the privileges of the application, a Denial of Service condition or access the content of arbitrary local files. Workaround : There is no known workaround at this time.
    last seen 2019-02-21
    modified 2017-05-10
    plugin id 100085
    published 2017-05-10
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=100085
    title GLSA-201705-08 : libav: Multiple vulnerabilities
  • NASL family Gentoo Local Security Checks
    NASL id GENTOO_GLSA-201606-09.NASL
    description The remote host is affected by the vulnerability described in GLSA-201606-09 (FFmpeg: Multiple vulnerabilities) Multiple vulnerabilities have been discovered in FFmpeg. Please review the CVE identifiers referenced below for details. Impact : A remote attacker could possibly execute arbitrary code or cause a Denial of Service condition. Workaround : There is no known workaround at this time.
    last seen 2019-02-21
    modified 2016-10-10
    plugin id 91703
    published 2016-06-20
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=91703
    title GLSA-201606-09 : FFmpeg: Multiple vulnerabilities
  • NASL family Ubuntu Local Security Checks
    NASL id UBUNTU_USN-2944-1.NASL
    description It was discovered that Libav incorrectly handled certain malformed media files. If a user were tricked into opening a crafted media file, an attacker could cause a denial of service via application crash, or possibly execute arbitrary code with the privileges of the user invoking the program. Note that Tenable Network Security has extracted the preceding description block directly from the Ubuntu security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen 2019-02-21
    modified 2018-12-01
    plugin id 90349
    published 2016-04-05
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=90349
    title Ubuntu 12.04 LTS : libav vulnerabilities (USN-2944-1)
  • NASL family Slackware Local Security Checks
    NASL id SLACKWARE_SSA_2016-034-02.NASL
    description New MPlayer packages are available for Slackware 13.0, 13.1, 13.37, 14.0, 14.1, and -current to fix security issues.
    last seen 2019-02-21
    modified 2016-10-19
    plugin id 88565
    published 2016-02-04
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=88565
    title Slackware 13.0 / 13.1 / 13.37 / 14.0 / 14.1 / current : MPlayer (SSA:2016-034-02)
  • NASL family Debian Local Security Checks
    NASL id DEBIAN_DSA-3506.NASL
    description Several security issues have been corrected in multiple demuxers and decoders of the libav multimedia library.
    last seen 2019-02-21
    modified 2018-11-10
    plugin id 89696
    published 2016-03-07
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=89696
    title Debian DSA-3506-1 : libav - security update
  • NASL family FreeBSD Local Security Checks
    NASL id FREEBSD_PKG_046FEDD1BD0111E5BBF45404A68AD561.NASL
    description Arch Linux reports : ffmpeg has a vulnerability in the current version that allows the attacker to create a specially crafted video file, downloading which will send files from a user PC to a remote attacker server. The attack does not even require the user to open that file -- for example, KDE Dolphin thumbnail generation is enough.
    last seen 2019-02-21
    modified 2018-11-10
    plugin id 87980
    published 2016-01-19
    reporter Tenable
    source https://www.tenable.com/plugins/index.php?view=single&id=87980
    title FreeBSD : ffmpeg -- remote attacker can access local files (046fedd1-bd01-11e5-bbf4-5404a68ad561)
refmap via4
bid 80501
cert-vn VU#772447
debian DSA-3506
gentoo
  • GLSA-201606-09
  • GLSA-201705-08
misc
mlist [oss-security] 20160114 Re: Fwd: FFmpeg: stealing local files with HLS+concat
sectrack 1034932
slackware SSA:2016-034-02
suse openSUSE-SU-2016:0243
ubuntu USN-2944-1
Last major update 07-12-2016 - 13:33
Published 14-01-2016 - 22:59
Last modified 30-10-2018 - 12:27
Back to Top