Vulnerabilities > CVE-2016-2326 - Integer Overflow or Wraparound vulnerability in multiple products
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
HIGH Integrity impact
HIGH Availability impact
HIGH Summary
Integer overflow in the asf_write_packet function in libavformat/asfenc.c in FFmpeg before 2.8.5 allows remote attackers to cause a denial of service or possibly have unspecified other impact via a crafted PTS (aka presentation timestamp) value in a .mov file.
Vulnerable Configurations
Common Weakness Enumeration (CWE)
Common Attack Pattern Enumeration and Classification (CAPEC)
- Forced Integer Overflow This attack forces an integer variable to go out of range. The integer variable is often used as an offset such as size of memory allocation or similarly. The attacker would typically control the value of such variable and try to get it out of range. For instance the integer in question is incremented past the maximum possible value, it may wrap to become a very small, or negative number, therefore providing a very incorrect value which can lead to unexpected behavior. At worst the attacker can execute arbitrary code.
Nessus
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 2020-06-01 modified 2020-06-02 plugin id 91703 published 2016-06-20 reporter This script is Copyright (C) 2016 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/91703 title GLSA-201606-09 : FFmpeg: Multiple vulnerabilities code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from Gentoo Linux Security Advisory GLSA 201606-09. # # The advisory text is Copyright (C) 2001-2016 Gentoo Foundation, Inc. # and licensed under the Creative Commons - Attribution / Share Alike # license. See http://creativecommons.org/licenses/by-sa/3.0/ # include("compat.inc"); if (description) { script_id(91703); script_version("$Revision: 2.2 $"); script_cvs_date("$Date: 2016/10/10 14:25:16 $"); script_cve_id("CVE-2014-9676", "CVE-2016-1897", "CVE-2016-1898", "CVE-2016-2213", "CVE-2016-2326", "CVE-2016-2327", "CVE-2016-2328", "CVE-2016-2329", "CVE-2016-2330"); script_xref(name:"GLSA", value:"201606-09"); script_name(english:"GLSA-201606-09 : FFmpeg: Multiple vulnerabilities"); script_summary(english:"Checks for updated package(s) in /var/db/pkg"); script_set_attribute( attribute:"synopsis", value: "The remote Gentoo host is missing one or more security-related patches." ); script_set_attribute( attribute:"description", value: "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." ); script_set_attribute( attribute:"see_also", value:"https://security.gentoo.org/glsa/201606-09" ); script_set_attribute( attribute:"solution", value: "All FFmpeg users should upgrade to the latest version: # emerge --sync # emerge --ask --oneshot --verbose '>=media-video/ffmpeg-2.8.6'" ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P"); script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:ffmpeg"); script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux"); script_set_attribute(attribute:"patch_publication_date", value:"2016/06/18"); script_set_attribute(attribute:"plugin_publication_date", value:"2016/06/20"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2016 Tenable Network Security, Inc."); script_family(english:"Gentoo Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("qpkg.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo"); if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING); flag = 0; if (qpkg_check(package:"media-video/ffmpeg", unaffected:make_list("ge 2.8.6"), vulnerable:make_list("lt 2.8.6"))) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:qpkg_report_get()); else security_warning(0); exit(0); } else { tested = qpkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "FFmpeg"); }
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 2020-06-01 modified 2020-06-02 plugin id 90349 published 2016-04-05 reporter Ubuntu Security Notice (C) 2016-2019 Canonical, Inc. / NASL script (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/90349 title Ubuntu 12.04 LTS : libav vulnerabilities (USN-2944-1) code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from Ubuntu Security Notice USN-2944-1. The text # itself is copyright (C) Canonical, Inc. See # <http://www.ubuntu.com/usn/>. Ubuntu(R) is a registered # trademark of Canonical, Inc. # include("compat.inc"); if (description) { script_id(90349); script_version("2.8"); script_cvs_date("Date: 2019/09/18 12:31:45"); script_cve_id("CVE-2014-8541", "CVE-2015-1872", "CVE-2015-3395", "CVE-2015-5479", "CVE-2015-6818", "CVE-2015-6820", "CVE-2015-6824", "CVE-2015-6826", "CVE-2015-8364", "CVE-2015-8365", "CVE-2016-1897", "CVE-2016-1898", "CVE-2016-2326", "CVE-2016-2330"); script_xref(name:"USN", value:"2944-1"); script_name(english:"Ubuntu 12.04 LTS : libav vulnerabilities (USN-2944-1)"); script_summary(english:"Checks dpkg output for updated packages."); script_set_attribute( attribute:"synopsis", value: "The remote Ubuntu host is missing one or more security-related patches." ); script_set_attribute( attribute:"description", value: "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." ); script_set_attribute( attribute:"see_also", value:"https://usn.ubuntu.com/2944-1/" ); script_set_attribute( attribute:"solution", value:"Update the affected libavcodec53 and / or libavformat53 packages." ); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P"); script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C"); script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"); script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available"); script_set_attribute(attribute:"exploit_available", value:"false"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:libavcodec53"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:libavformat53"); script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:12.04:-:lts"); script_set_attribute(attribute:"vuln_publication_date", value:"2014/11/05"); script_set_attribute(attribute:"patch_publication_date", value:"2016/04/04"); script_set_attribute(attribute:"plugin_publication_date", value:"2016/04/05"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"Ubuntu Security Notice (C) 2016-2019 Canonical, Inc. / NASL script (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof."); script_family(english:"Ubuntu Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/cpu", "Host/Ubuntu", "Host/Ubuntu/release", "Host/Debian/dpkg-l"); exit(0); } include("audit.inc"); include("ubuntu.inc"); include("misc_func.inc"); if ( ! get_kb_item("Host/local_checks_enabled") ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/Ubuntu/release"); if ( isnull(release) ) audit(AUDIT_OS_NOT, "Ubuntu"); release = chomp(release); if (! preg(pattern:"^(12\.04)$", string:release)) audit(AUDIT_OS_NOT, "Ubuntu 12.04", "Ubuntu " + release); if ( ! get_kb_item("Host/Debian/dpkg-l") ) audit(AUDIT_PACKAGE_LIST_MISSING); cpu = get_kb_item("Host/cpu"); if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH); if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Ubuntu", cpu); flag = 0; if (ubuntu_check(osver:"12.04", pkgname:"libavcodec53", pkgver:"4:0.8.17-0ubuntu0.12.04.2")) flag++; if (ubuntu_check(osver:"12.04", pkgname:"libavformat53", pkgver:"4:0.8.17-0ubuntu0.12.04.2")) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_HOLE, extra : ubuntu_report_get() ); exit(0); } else { tested = ubuntu_pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "libavcodec53 / libavformat53"); }
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 2020-06-01 modified 2020-06-02 plugin id 89696 published 2016-03-07 reporter This script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/89696 title Debian DSA-3506-1 : libav - security update code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from Debian Security Advisory DSA-3506. The text # itself is copyright (C) Software in the Public Interest, Inc. # include("compat.inc"); if (description) { script_id(89696); script_version("2.4"); script_cvs_date("Date: 2018/11/10 11:49:37"); script_cve_id("CVE-2016-1897", "CVE-2016-1898", "CVE-2016-2326"); script_xref(name:"DSA", value:"3506"); script_name(english:"Debian DSA-3506-1 : libav - security update"); script_summary(english:"Checks dpkg output for the updated package"); script_set_attribute( attribute:"synopsis", value:"The remote Debian host is missing a security-related update." ); script_set_attribute( attribute:"description", value: "Several security issues have been corrected in multiple demuxers and decoders of the libav multimedia library." ); # https://git.libav.org/?p=libav.git;a=blob;f=Changelog;hb=refs/tags/v11.6 script_set_attribute( attribute:"see_also", value:"http://www.nessus.org/u?3beefed6" ); script_set_attribute( attribute:"see_also", value:"https://packages.debian.org/source/wheezy/libav" ); script_set_attribute( attribute:"see_also", value:"https://www.debian.org/security/2016/dsa-3506" ); script_set_attribute( attribute:"solution", value: "Upgrade the libav packages. For the oldstable distribution (wheezy), these problems have been fixed in version 6:0.8.17-2. For the stable distribution (jessie), libav has been updated to 6:11.6-1~deb8u1 which brings several further bugfixes as detailed in the upstream changelog: https://git.libav.org/?p=libav.git;a=blob;f=Changelog;hb=refs/tags/v11 .6" ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P"); script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:libav"); script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:7.0"); script_set_attribute(attribute:"patch_publication_date", value:"2016/03/04"); script_set_attribute(attribute:"plugin_publication_date", value:"2016/03/07"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof."); script_family(english:"Debian Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l"); exit(0); } include("audit.inc"); include("debian_package.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian"); if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING); flag = 0; if (deb_check(release:"7.0", prefix:"ffmpeg", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"ffmpeg-dbg", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"ffmpeg-doc", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libav-dbg", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libav-doc", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libav-extra-dbg", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libav-tools", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavcodec-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavcodec-extra-53", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavcodec53", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavdevice-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavdevice-extra-53", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavdevice53", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavfilter-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavfilter-extra-2", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavfilter2", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavformat-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavformat-extra-53", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavformat53", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavutil-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavutil-extra-51", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libavutil51", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libpostproc-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libpostproc-extra-52", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libpostproc52", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libswscale-dev", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libswscale-extra-2", reference:"6:0.8.17-2")) flag++; if (deb_check(release:"7.0", prefix:"libswscale2", reference:"6:0.8.17-2")) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:deb_report_get()); else security_warning(0); exit(0); } else audit(AUDIT_HOST_NOT, "affected");
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 2020-06-01 modified 2020-06-02 plugin id 100085 published 2017-05-10 reporter This script is Copyright (C) 2017 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/100085 title GLSA-201705-08 : libav: Multiple vulnerabilities code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from Gentoo Linux Security Advisory GLSA 201705-08. # # The advisory text is Copyright (C) 2001-2017 Gentoo Foundation, Inc. # and licensed under the Creative Commons - Attribution / Share Alike # license. See http://creativecommons.org/licenses/by-sa/3.0/ # include("compat.inc"); if (description) { script_id(100085); script_version("$Revision: 3.1 $"); script_cvs_date("$Date: 2017/05/10 13:37:30 $"); script_cve_id("CVE-2015-3395", "CVE-2015-3417", "CVE-2016-1897", "CVE-2016-1898", "CVE-2016-2326", "CVE-2016-3062"); script_xref(name:"GLSA", value:"201705-08"); script_name(english:"GLSA-201705-08 : libav: Multiple vulnerabilities"); script_summary(english:"Checks for updated package(s) in /var/db/pkg"); script_set_attribute( attribute:"synopsis", value: "The remote Gentoo host is missing one or more security-related patches." ); script_set_attribute( attribute:"description", value: "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." ); script_set_attribute( attribute:"see_also", value:"https://security.gentoo.org/glsa/201705-08" ); script_set_attribute( attribute:"solution", value: "All libav users should upgrade to the latest version: # emerge --sync # emerge --ask --oneshot --verbose '>=media-video/libav-11.8'" ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P"); script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:gentoo:linux:libav"); script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux"); script_set_attribute(attribute:"patch_publication_date", value:"2017/05/09"); script_set_attribute(attribute:"plugin_publication_date", value:"2017/05/10"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2017 Tenable Network Security, Inc."); script_family(english:"Gentoo Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("qpkg.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo"); if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING); flag = 0; if (qpkg_check(package:"media-video/libav", unaffected:make_list("ge 11.8"), vulnerable:make_list("lt 11.8"))) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:qpkg_report_get()); else security_warning(0); exit(0); } else { tested = qpkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "libav"); }
References
- http://www.ubuntu.com/usn/USN-2944-1
- http://www.securityfocus.com/bid/84165
- https://security.gentoo.org/glsa/201606-09
- http://www.securitytracker.com/id/1035010
- https://security.gentoo.org/glsa/201705-08
- http://www.debian.org/security/2016/dsa-3506
- http://git.videolan.org/?p=ffmpeg.git%3Ba=commit%3Bh=7c0b84d89911b2035161f5ef51aafbfcc84aa9e2