Vulnerabilities > CVE-2019-5608 - Out-of-bounds Write vulnerability in multiple products
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
HIGH Integrity impact
HIGH Availability impact
HIGH Summary
In FreeBSD 12.0-STABLE before r350648, 12.0-RELEASE before 12.0-RELEASE-p9, 11.3-STABLE before r350650, 11.3-RELEASE before 11.3-RELEASE-p2, and 11.2-RELEASE before 11.2-RELEASE-p13, the ICMPv6 input path incorrectly handles cases where an MLDv2 listener query packet is internally fragmented across multiple mbufs. A remote attacker may be able to cause an out-of-bounds read or write that may cause the kernel to attempt to access an unmapped page and subsequently panic.
Vulnerable Configurations
Part | Description | Count |
---|---|---|
OS | 24 | |
Application | 1 |
Common Weakness Enumeration (CWE)
Nessus
NASL family FreeBSD Local Security Checks NASL id FREEBSD_SA-19-19_MLDV2.NASL description The version of the FreeBSD kernel running on the remote host is 11.x prior to 11.2-RELEASE-p13, 11.x prior to 11.3-RELEASE-p2, or 12.x prior to 12.0-RELEASE-p9. It is, therefore, affected by an out-of-bounds memory access denial-of-service vulnerability in MLDv2. An unauthenticated attacker could exploit this, via a malicious MLDv2 listener query packet, to cause an out-of-bounds memory access and a subsequent kernel panic. Note: Systems not using IPv6 are not affected. last seen 2020-06-01 modified 2020-06-02 plugin id 128078 published 2019-08-22 reporter This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/128078 title FreeBSD 11.x < 11.2-RELEASE-p13 / 11.x < 11.3-RELEASE-p2 / 12.x < 12.0-RELEASE-p9 MLDv2 Out-of-Bounds Memory Access DoS code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(128078); script_version("1.2"); script_cvs_date("Date: 2019/08/30 12:15:05"); script_cve_id("CVE-2019-5608"); script_name(english:"FreeBSD 11.x < 11.2-RELEASE-p13 / 11.x < 11.3-RELEASE-p2 / 12.x < 12.0-RELEASE-p9 MLDv2 Out-of-Bounds Memory Access DoS"); script_summary(english:"Checks for the version of the FreeBSD kernel."); script_set_attribute(attribute:"synopsis", value: "The remote FreeBSD host is missing a security-related update."); script_set_attribute(attribute:"description", value: "The version of the FreeBSD kernel running on the remote host is 11.x prior to 11.2-RELEASE-p13, 11.x prior to 11.3-RELEASE-p2, or 12.x prior to 12.0-RELEASE-p9. It is, therefore, affected by an out-of-bounds memory access denial-of-service vulnerability in MLDv2. An unauthenticated attacker could exploit this, via a malicious MLDv2 listener query packet, to cause an out-of-bounds memory access and a subsequent kernel panic. Note: Systems not using IPv6 are not affected."); script_set_attribute(attribute:"see_also", value:"https://www.freebsd.org/security/advisories/FreeBSD-SA-19:19.mldv2.asc"); script_set_attribute(attribute:"solution", value: "Upgrade to the appropriate FreeBSD version."); script_set_cvss_base_vector("CVSS2#AV:A/AC:L/Au:N/C:N/I:N/A:C"); script_set_cvss3_base_vector("CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"); script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-5608"); script_set_attribute(attribute:"vuln_publication_date", value:"2019/08/06"); script_set_attribute(attribute:"patch_publication_date", value:"2019/08/06"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/08/22"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"cpe:/o:freebsd:freebsd"); script_set_attribute(attribute:"potential_vulnerability", value:"true"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"FreeBSD Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/FreeBSD/release", "Settings/ParanoidReport"); exit(0); } include("audit.inc"); include("freebsd_package.inc"); include("misc_func.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/FreeBSD/release"); if (!release) audit(AUDIT_OS_NOT, "FreeBSD"); # Patches are available, require paranoid since it is possible # to manually patch and have a lower OS level. Additionally, # systems not using IPv6 are not affected. if (report_paranoia < 2) audit(AUDIT_PARANOID); fix = NULL; if (release =~ "^FreeBSD-11\.[0-2]($|[^0-9])") fix = "FreeBSD-11.2_13"; if (release =~ "^FreeBSD-11\.3($|[^0-9])") fix = "FreeBSD-11.3_2"; else if (release =~ "^FreeBSD-12\.0($|[^0-9])") fix = "FreeBSD-12.0_9"; if (isnull(fix) || pkg_cmp(pkg:release, reference:fix) >= 0) audit(AUDIT_HOST_NOT, "affected"); report = '\n Installed version : ' + release + '\n Fixed version : ' + fix + '\n'; security_report_v4(port:0, severity:SECURITY_WARNING, extra:report);
NASL family FreeBSD Local Security Checks NASL id FREEBSD_PKG_41D2F3E6F68011E9A87FA4BADB2F4699.NASL description The ICMPv6 input path incorrectly handles cases where an MLDv2 listener query packet is internally fragmented across multiple mbufs. Impact : A remote attacker may be able to cause an out-of-bounds read or write that may cause the kernel to attempt to access an unmapped page and subsequently panic. last seen 2020-06-01 modified 2020-06-02 plugin id 130241 published 2019-10-25 reporter This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/130241 title FreeBSD : FreeBSD -- ICMPv6 / MLDv2 out-of-bounds memory access (41d2f3e6-f680-11e9-a87f-a4badb2f4699) code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from the FreeBSD VuXML database : # # Copyright 2003-2019 Jacques Vidrine and contributors # # Redistribution and use in source (VuXML) and 'compiled' forms (SGML, # HTML, PDF, PostScript, RTF and so forth) with or without modification, # are permitted provided that the following conditions are met: # 1. Redistributions of source code (VuXML) must retain the above # copyright notice, this list of conditions and the following # disclaimer as the first lines of this file unmodified. # 2. Redistributions in compiled form (transformed to other DTDs, # published online in any format, converted to PDF, PostScript, # RTF and other formats) must reproduce the above copyright # notice, this list of conditions and the following disclaimer # in the documentation and/or other materials provided with the # distribution. # # THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # include("compat.inc"); if (description) { script_id(130241); script_version("1.2"); script_cvs_date("Date: 2019/12/18"); script_cve_id("CVE-2019-5608"); script_xref(name:"FreeBSD", value:"SA-19:19.mldv2"); script_name(english:"FreeBSD : FreeBSD -- ICMPv6 / MLDv2 out-of-bounds memory access (41d2f3e6-f680-11e9-a87f-a4badb2f4699)"); script_summary(english:"Checks for updated packages in pkg_info output"); script_set_attribute( attribute:"synopsis", value: "The remote FreeBSD host is missing one or more security-related updates." ); script_set_attribute( attribute:"description", value: "The ICMPv6 input path incorrectly handles cases where an MLDv2 listener query packet is internally fragmented across multiple mbufs. Impact : A remote attacker may be able to cause an out-of-bounds read or write that may cause the kernel to attempt to access an unmapped page and subsequently panic." ); # https://vuxml.freebsd.org/freebsd/41d2f3e6-f680-11e9-a87f-a4badb2f4699.html script_set_attribute( attribute:"see_also", value:"http://www.nessus.org/u?846f23fc" ); script_set_attribute(attribute:"solution", value:"Update the affected 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:N/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:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:FreeBSD"); script_set_attribute(attribute:"cpe", value:"cpe:/o:freebsd:freebsd"); script_set_attribute(attribute:"vuln_publication_date", value:"2019/08/06"); script_set_attribute(attribute:"patch_publication_date", value:"2019/10/24"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/10/25"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof."); script_family(english:"FreeBSD Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/FreeBSD/release", "Host/FreeBSD/pkg_info", "Settings/ParanoidReport"); exit(0); } include("audit.inc"); include("freebsd_package.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); if (!get_kb_item("Host/FreeBSD/release")) audit(AUDIT_OS_NOT, "FreeBSD"); if (!get_kb_item("Host/FreeBSD/pkg_info")) audit(AUDIT_PACKAGE_LIST_MISSING); if (report_paranoia < 2) audit(AUDIT_PARANOID); flag = 0; if (pkg_test(save_report:TRUE, pkg:"FreeBSD>=12.0<12.0_9")) flag++; if (pkg_test(save_report:TRUE, pkg:"FreeBSD>=11.3<11.3_2")) flag++; if (pkg_test(save_report:TRUE, pkg:"FreeBSD>=11.2<11.2_13")) flag++; if (flag) { if (report_verbosity > 0) security_hole(port:0, extra:pkg_report_get()); else security_hole(0); exit(0); } else audit(AUDIT_HOST_NOT, "affected");