Vulnerabilities > CVE-2019-17595 - Out-of-bounds Read vulnerability in multiple products
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
LOW Integrity impact
NONE Availability impact
LOW Summary
There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.
Vulnerable Configurations
Part | Description | Count |
---|---|---|
Application | Gnu
| 18 |
OS | 2 |
Common Weakness Enumeration (CWE)
Common Attack Pattern Enumeration and Classification (CAPEC)
- Overread Buffers An adversary attacks a target by providing input that causes an application to read beyond the boundary of a defined buffer. This typically occurs when a value influencing where to start or stop reading is set to reflect positions outside of the valid memory location of the buffer. This type of attack may result in exposure of sensitive information, a system crash, or arbitrary code execution.
Nessus
NASL family Huawei Local Security Checks NASL id EULEROS_SA-2019-2544.NASL description According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-05-08 modified 2019-12-09 plugin id 131818 published 2019-12-09 reporter This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131818 title EulerOS 2.0 SP5 : ncurses (EulerOS-SA-2019-2544) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(131818); script_version("1.3"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/07"); script_cve_id( "CVE-2019-17594", "CVE-2019-17595" ); script_name(english:"EulerOS 2.0 SP5 : ncurses (EulerOS-SA-2019-2544)"); script_summary(english:"Checks the rpm output for the updated packages."); script_set_attribute(attribute:"synopsis", value: "The remote EulerOS host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues."); # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2019-2544 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?85663f56"); script_set_attribute(attribute:"solution", value: "Update the affected ncurses packages."); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"patch_publication_date", value:"2019/12/09"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/12/09"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-term"); script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:2.0"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Huawei Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/sp"); script_exclude_keys("Host/EulerOS/uvp_version"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/EulerOS/release"); if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS"); if (release !~ "^EulerOS release 2\.0(\D|$)") audit(AUDIT_OS_NOT, "EulerOS 2.0"); sp = get_kb_item("Host/EulerOS/sp"); if (isnull(sp) || sp !~ "^(5)$") audit(AUDIT_OS_NOT, "EulerOS 2.0 SP5"); uvp = get_kb_item("Host/EulerOS/uvp_version"); if (!empty_or_null(uvp)) audit(AUDIT_OS_NOT, "EulerOS 2.0 SP5", "EulerOS UVP " + uvp); if (!get_kb_item("Host/EulerOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu); if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_ARCH_NOT, "i686 / x86_64", cpu); flag = 0; pkgs = ["ncurses-5.9-14.20130511.h6.eulerosv2r7", "ncurses-base-5.9-14.20130511.h6.eulerosv2r7", "ncurses-devel-5.9-14.20130511.h6.eulerosv2r7", "ncurses-libs-5.9-14.20130511.h6.eulerosv2r7", "ncurses-term-5.9-14.20130511.h6.eulerosv2r7"]; foreach (pkg in pkgs) if (rpm_check(release:"EulerOS-2.0", sp:"5", reference:pkg)) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_WARNING, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family SuSE Local Security Checks NASL id SUSE_SU-2019-3094-1.NASL description This update for ncurses fixes the following issues : Security issue fixed : CVE-2018-10754: Fixed a denial of service caused by a NULL pointer Dereference in the _nc_parse_entry() (bsc#1131830). CVE-2019-17594: Fixed a heap-based buffer over-read in _nc_find_entry function in tinfo/comp_hash.c (bsc#1154036). CVE-2019-17595: Fixed a heap-based buffer over-read in fmt_entry function in tinfo/comp_hash.c (bsc#1154037). Bug fixes: Fixed ppc64le build configuration (bsc#1134550). Note that Tenable Network Security has extracted the preceding description block directly from the SUSE 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 131555 published 2019-12-03 reporter This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131555 title SUSE SLED12 / SLES12 Security Update : ncurses (SUSE-SU-2019:3094-1) code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from SUSE update advisory SUSE-SU-2019:3094-1. # The text itself is copyright (C) SUSE. # include("compat.inc"); if (description) { script_id(131555); script_version("1.2"); script_cvs_date("Date: 2019/12/09"); script_cve_id("CVE-2018-10754", "CVE-2019-17594", "CVE-2019-17595"); script_name(english:"SUSE SLED12 / SLES12 Security Update : ncurses (SUSE-SU-2019:3094-1)"); script_summary(english:"Checks rpm output for the updated packages."); script_set_attribute( attribute:"synopsis", value:"The remote SUSE host is missing one or more security updates." ); script_set_attribute( attribute:"description", value: "This update for ncurses fixes the following issues : Security issue fixed : CVE-2018-10754: Fixed a denial of service caused by a NULL pointer Dereference in the _nc_parse_entry() (bsc#1131830). CVE-2019-17594: Fixed a heap-based buffer over-read in _nc_find_entry function in tinfo/comp_hash.c (bsc#1154036). CVE-2019-17595: Fixed a heap-based buffer over-read in fmt_entry function in tinfo/comp_hash.c (bsc#1154037). Bug fixes: Fixed ppc64le build configuration (bsc#1134550). Note that Tenable Network Security has extracted the preceding description block directly from the SUSE 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://bugzilla.suse.com/show_bug.cgi?id=1131830" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.suse.com/show_bug.cgi?id=1134550" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.suse.com/show_bug.cgi?id=1154036" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.suse.com/show_bug.cgi?id=1154037" ); script_set_attribute( attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2018-10754/" ); script_set_attribute( attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2019-17594/" ); script_set_attribute( attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2019-17595/" ); # https://www.suse.com/support/update/announcement/2019/suse-su-20193094-1/ script_set_attribute( attribute:"see_also", value:"http://www.nessus.org/u?5ba9cfa9" ); script_set_attribute( attribute:"solution", value: "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or 'zypper patch'. Alternatively you can run the command listed for your product : SUSE Linux Enterprise Software Development Kit 12-SP5:zypper in -t patch SUSE-SLE-SDK-12-SP5-2019-3094=1 SUSE Linux Enterprise Software Development Kit 12-SP4:zypper in -t patch SUSE-SLE-SDK-12-SP4-2019-3094=1 SUSE Linux Enterprise Server 12-SP5:zypper in -t patch SUSE-SLE-SERVER-12-SP5-2019-3094=1 SUSE Linux Enterprise Server 12-SP4:zypper in -t patch SUSE-SLE-SERVER-12-SP4-2019-3094=1 SUSE Linux Enterprise Desktop 12-SP4:zypper in -t patch SUSE-SLE-DESKTOP-12-SP4-2019-3094=1 SUSE CaaS Platform 3.0 : To install this update, use the SUSE CaaS Platform Velum dashboard. It will inform you if it detects new updates and let you then trigger updating of the complete cluster in a controlled way." ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses5"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses5-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses6"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses6-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-debugsource"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-devel-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-utils"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-utils-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:tack"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:tack-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:terminfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:terminfo-base"); script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:12"); script_set_attribute(attribute:"vuln_publication_date", value:"2018/05/04"); script_set_attribute(attribute:"patch_publication_date", value:"2019/11/28"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/12/03"); 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:"SuSE Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/SuSE/release"); if (isnull(release) || release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE"); os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release); if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE"); os_ver = os_ver[1]; if (! preg(pattern:"^(SLED12|SLES12)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLED12 / SLES12", "SUSE " + os_ver); if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING); cpu = get_kb_item("Host/cpu"); if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH); if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu); sp = get_kb_item("Host/SuSE/patchlevel"); if (isnull(sp)) sp = "0"; if (os_ver == "SLES12" && (! preg(pattern:"^(4|5)$", string:sp))) audit(AUDIT_OS_NOT, "SLES12 SP4/5", os_ver + " SP" + sp); if (os_ver == "SLED12" && (! preg(pattern:"^(4)$", string:sp))) audit(AUDIT_OS_NOT, "SLED12 SP4", os_ver + " SP" + sp); flag = 0; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses5-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses5-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses6-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses6-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-debugsource-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-devel-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-devel-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-utils-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-utils-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"tack-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"tack-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"terminfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"terminfo-base-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses5-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses5-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses6-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"libncurses6-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-devel-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"4", reference:"ncurses-devel-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses5-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses5-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses6-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses6-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-debugsource-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-devel-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-devel-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-utils-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-utils-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"tack-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"tack-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"terminfo-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"terminfo-base-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses5-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses5-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses6-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"libncurses6-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-devel-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLES12", sp:"5", reference:"ncurses-devel-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses5-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses5-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses5-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses5-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses6-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses6-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses6-debuginfo-32bit-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"libncurses6-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"ncurses-debugsource-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"ncurses-devel-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"ncurses-devel-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"ncurses-utils-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"ncurses-utils-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"tack-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"tack-debuginfo-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"terminfo-5.9-69.1")) flag++; if (rpm_check(release:"SLED12", sp:"4", cpu:"x86_64", reference:"terminfo-base-5.9-69.1")) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get()); else security_warning(0); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family Huawei Local Security Checks NASL id EULEROS_SA-2019-2292.NASL description According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-05-03 modified 2019-11-27 plugin id 131358 published 2019-11-27 reporter This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131358 title EulerOS 2.0 SP8 : ncurses (EulerOS-SA-2019-2292) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(131358); script_version("1.3"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/01"); script_cve_id( "CVE-2019-17594", "CVE-2019-17595" ); script_name(english:"EulerOS 2.0 SP8 : ncurses (EulerOS-SA-2019-2292)"); script_summary(english:"Checks the rpm output for the updated packages."); script_set_attribute(attribute:"synopsis", value: "The remote EulerOS host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues."); # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2019-2292 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?6c4ff5cd"); script_set_attribute(attribute:"solution", value: "Update the affected ncurses packages."); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"patch_publication_date", value:"2019/11/27"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/11/27"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-c++-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-compat-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-term"); script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:2.0"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Huawei Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/sp"); script_exclude_keys("Host/EulerOS/uvp_version"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/EulerOS/release"); if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS"); if (release !~ "^EulerOS release 2\.0(\D|$)") audit(AUDIT_OS_NOT, "EulerOS 2.0"); sp = get_kb_item("Host/EulerOS/sp"); if (isnull(sp) || sp !~ "^(8)$") audit(AUDIT_OS_NOT, "EulerOS 2.0 SP8"); uvp = get_kb_item("Host/EulerOS/uvp_version"); if (!empty_or_null(uvp)) audit(AUDIT_OS_NOT, "EulerOS 2.0 SP8", "EulerOS UVP " + uvp); if (!get_kb_item("Host/EulerOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu); if ("aarch64" >!< cpu) audit(AUDIT_ARCH_NOT, "aarch64", cpu); flag = 0; pkgs = ["ncurses-6.1-8.20180923.h1.eulerosv2r8", "ncurses-base-6.1-8.20180923.h1.eulerosv2r8", "ncurses-c++-libs-6.1-8.20180923.h1.eulerosv2r8", "ncurses-compat-libs-6.1-8.20180923.h1.eulerosv2r8", "ncurses-devel-6.1-8.20180923.h1.eulerosv2r8", "ncurses-libs-6.1-8.20180923.h1.eulerosv2r8", "ncurses-term-6.1-8.20180923.h1.eulerosv2r8"]; foreach (pkg in pkgs) if (rpm_check(release:"EulerOS-2.0", sp:"8", reference:pkg)) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_WARNING, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family Huawei Local Security Checks NASL id EULEROS_SA-2019-2420.NASL description According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - In ncurses 6.0, there is a stack-based buffer overflow in the fmt_entry function. A crafted input will lead to a remote arbitrary code execution attack.(CVE-2017-10684) - In ncurses 6.0, there is a format string vulnerability in the fmt_entry function. A crafted input will lead to a remote arbitrary code execution attack.(CVE-2017-10685) - In ncurses 6.0, there is an attempted 0xffffffffffffffff access in the append_acs function of tinfo/parse_entry.c. It could lead to a remote denial of service attack if the terminfo library code is used to process untrusted terminfo data.(CVE-2017-11112) - In ncurses 6.0, there is a NULL Pointer Dereference in the _nc_parse_entry function of tinfo/parse_entry.c. It could lead to a remote denial of service attack if the terminfo library code is used to process untrusted terminfo data.(CVE-2017-11113) - There is an infinite loop in the next_char function in comp_scan.c in ncurses 6.0, related to libtic. A crafted input will lead to a remote denial of service attack.(CVE-2017-13728) - There is an illegal address access in the _nc_save_str function in alloc_entry.c in ncurses 6.0. It will lead to a remote denial of service attack.(CVE-2017-13729) - There is an illegal address access in the function _nc_read_entry_source() in progs/tic.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13730) - There is an illegal address access in the function postprocess_termcap() in parse_entry.c in ncurses 6.0 that will lead to a remote denial of service attack.(CVE-2017-13731) - There is an illegal address access in the function dump_uses() in progs/dump_entry.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13732) - There is an illegal address access in the fmt_entry function in progs/dump_entry.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13733) - There is an illegal address access in the _nc_safe_strcat function in strings.c in ncurses 6.0 that will lead to a remote denial of service attack.(CVE-2017-13734) - In ncurses 6.1, there is a NULL pointer dereference at function _nc_parse_entry in parse_entry.c that will lead to a denial of service attack. The product proceeds to the dereference code path even after a last seen 2020-05-08 modified 2019-12-10 plugin id 131912 published 2019-12-10 reporter This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131912 title EulerOS 2.0 SP2 : ncurses (EulerOS-SA-2019-2420) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(131912); script_version("1.3"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/07"); script_cve_id( "CVE-2017-10684", "CVE-2017-10685", "CVE-2017-11112", "CVE-2017-11113", "CVE-2017-13728", "CVE-2017-13729", "CVE-2017-13730", "CVE-2017-13731", "CVE-2017-13732", "CVE-2017-13733", "CVE-2017-13734", "CVE-2018-19211", "CVE-2019-17594", "CVE-2019-17595" ); script_name(english:"EulerOS 2.0 SP2 : ncurses (EulerOS-SA-2019-2420)"); script_summary(english:"Checks the rpm output for the updated packages."); script_set_attribute(attribute:"synopsis", value: "The remote EulerOS host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - In ncurses 6.0, there is a stack-based buffer overflow in the fmt_entry function. A crafted input will lead to a remote arbitrary code execution attack.(CVE-2017-10684) - In ncurses 6.0, there is a format string vulnerability in the fmt_entry function. A crafted input will lead to a remote arbitrary code execution attack.(CVE-2017-10685) - In ncurses 6.0, there is an attempted 0xffffffffffffffff access in the append_acs function of tinfo/parse_entry.c. It could lead to a remote denial of service attack if the terminfo library code is used to process untrusted terminfo data.(CVE-2017-11112) - In ncurses 6.0, there is a NULL Pointer Dereference in the _nc_parse_entry function of tinfo/parse_entry.c. It could lead to a remote denial of service attack if the terminfo library code is used to process untrusted terminfo data.(CVE-2017-11113) - There is an infinite loop in the next_char function in comp_scan.c in ncurses 6.0, related to libtic. A crafted input will lead to a remote denial of service attack.(CVE-2017-13728) - There is an illegal address access in the _nc_save_str function in alloc_entry.c in ncurses 6.0. It will lead to a remote denial of service attack.(CVE-2017-13729) - There is an illegal address access in the function _nc_read_entry_source() in progs/tic.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13730) - There is an illegal address access in the function postprocess_termcap() in parse_entry.c in ncurses 6.0 that will lead to a remote denial of service attack.(CVE-2017-13731) - There is an illegal address access in the function dump_uses() in progs/dump_entry.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13732) - There is an illegal address access in the fmt_entry function in progs/dump_entry.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13733) - There is an illegal address access in the _nc_safe_strcat function in strings.c in ncurses 6.0 that will lead to a remote denial of service attack.(CVE-2017-13734) - In ncurses 6.1, there is a NULL pointer dereference at function _nc_parse_entry in parse_entry.c that will lead to a denial of service attack. The product proceeds to the dereference code path even after a 'dubious character `*' in name or alias field' detection.(CVE-2018-19211) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues."); # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2019-2420 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8f4fa791"); script_set_attribute(attribute:"solution", value: "Update the affected ncurses 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:"patch_publication_date", value:"2019/12/04"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/12/10"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-term"); script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:2.0"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Huawei Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/sp"); script_exclude_keys("Host/EulerOS/uvp_version"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/EulerOS/release"); if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS"); if (release !~ "^EulerOS release 2\.0(\D|$)") audit(AUDIT_OS_NOT, "EulerOS 2.0"); sp = get_kb_item("Host/EulerOS/sp"); if (isnull(sp) || sp !~ "^(2)$") audit(AUDIT_OS_NOT, "EulerOS 2.0 SP2"); uvp = get_kb_item("Host/EulerOS/uvp_version"); if (!empty_or_null(uvp)) audit(AUDIT_OS_NOT, "EulerOS 2.0 SP2", "EulerOS UVP " + uvp); if (!get_kb_item("Host/EulerOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu); if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_ARCH_NOT, "i686 / x86_64", cpu); flag = 0; pkgs = ["ncurses-5.9-13.20130511.h5", "ncurses-base-5.9-13.20130511.h5", "ncurses-devel-5.9-13.20130511.h5", "ncurses-libs-5.9-13.20130511.h5", "ncurses-term-5.9-13.20130511.h5"]; foreach (pkg in pkgs) if (rpm_check(release:"EulerOS-2.0", sp:"2", reference:pkg)) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_HOLE, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family Huawei Local Security Checks NASL id EULEROS_SA-2020-1064.NASL description According to the versions of the ncurses packages installed, the EulerOS Virtualization for ARM 64 installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS 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 132818 published 2020-01-13 reporter This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/132818 title EulerOS Virtualization for ARM 64 3.0.5.0 : ncurses (EulerOS-SA-2020-1064) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(132818); script_version("1.2"); script_cvs_date("Date: 2020/01/15"); script_cve_id( "CVE-2019-17594", "CVE-2019-17595" ); script_name(english:"EulerOS Virtualization for ARM 64 3.0.5.0 : ncurses (EulerOS-SA-2020-1064)"); script_summary(english:"Checks the rpm output for the updated packages."); script_set_attribute(attribute:"synopsis", value: "The remote EulerOS Virtualization for ARM 64 host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "According to the versions of the ncurses packages installed, the EulerOS Virtualization for ARM 64 installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues."); # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2020-1064 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?dbf75e4b"); script_set_attribute(attribute:"solution", value: "Update the affected ncurses packages."); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:N/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:L/I:N/A:L"); 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:"patch_publication_date", value:"2020/01/13"); script_set_attribute(attribute:"plugin_publication_date", value:"2020/01/13"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-compat-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-libs"); script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:uvp:3.0.5.0"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Huawei Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/uvp_version"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/EulerOS/release"); if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS"); uvp = get_kb_item("Host/EulerOS/uvp_version"); if (uvp != "3.0.5.0") audit(AUDIT_OS_NOT, "EulerOS Virtualization 3.0.5.0"); if (!get_kb_item("Host/EulerOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu); if ("aarch64" >!< cpu) audit(AUDIT_ARCH_NOT, "aarch64", cpu); flag = 0; pkgs = ["ncurses-6.1-8.20180923.h1.eulerosv2r8", "ncurses-base-6.1-8.20180923.h1.eulerosv2r8", "ncurses-compat-libs-6.1-8.20180923.h1.eulerosv2r8", "ncurses-libs-6.1-8.20180923.h1.eulerosv2r8"]; foreach (pkg in pkgs) if (rpm_check(release:"EulerOS-2.0", reference:pkg)) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_WARNING, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family SuSE Local Security Checks NASL id OPENSUSE-2019-2550.NASL description This update for ncurses fixes the following issues : Security issues fixed : - CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036). - CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037). Non-security issue fixed : - Removed screen.xterm from terminfo database (bsc#1103320). This update was imported from the SUSE:SLE-15:Update update project. last seen 2020-06-01 modified 2020-06-02 plugin id 131278 published 2019-11-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/131278 title openSUSE Security Update : ncurses (openSUSE-2019-2550) code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from openSUSE Security Update openSUSE-2019-2550. # # The text description of this plugin is (C) SUSE LLC. # include("compat.inc"); if (description) { script_id(131278); script_version("1.2"); script_cvs_date("Date: 2019/12/09"); script_cve_id("CVE-2019-17594", "CVE-2019-17595"); script_name(english:"openSUSE Security Update : ncurses (openSUSE-2019-2550)"); script_summary(english:"Check for the openSUSE-2019-2550 patch"); script_set_attribute( attribute:"synopsis", value:"The remote openSUSE host is missing a security update." ); script_set_attribute( attribute:"description", value: "This update for ncurses fixes the following issues : Security issues fixed : - CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036). - CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037). Non-security issue fixed : - Removed screen.xterm from terminfo database (bsc#1103320). This update was imported from the SUSE:SLE-15:Update update project." ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1103320" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154036" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154037" ); script_set_attribute( attribute:"solution", value:"Update the affected ncurses packages." ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-debugsource"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-utils"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-utils-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses5-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses5-devel-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:tack"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:tack-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo-iterm"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo-screen"); script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:15.0"); script_set_attribute(attribute:"vuln_publication_date", value:"2019/10/14"); script_set_attribute(attribute:"patch_publication_date", value:"2019/11/23"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/11/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:"SuSE Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/SuSE/release"); if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE"); if (release !~ "^(SUSE15\.0)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "15.0", release); if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING); ourarch = get_kb_item("Host/cpu"); if (!ourarch) audit(AUDIT_UNKNOWN_ARCH); if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch); flag = 0; if ( rpm_check(release:"SUSE15.0", reference:"libncurses5-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"libncurses5-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"libncurses6-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"libncurses6-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"ncurses-debugsource-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"ncurses-devel-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"ncurses-devel-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"ncurses-utils-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"ncurses-utils-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"ncurses5-devel-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"tack-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"tack-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"terminfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"terminfo-base-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"terminfo-iterm-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", reference:"terminfo-screen-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"libncurses5-32bit-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"libncurses5-32bit-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"libncurses6-32bit-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"libncurses6-32bit-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"ncurses-devel-32bit-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"ncurses-devel-32bit-debuginfo-6.1-lp150.9.1") ) flag++; if ( rpm_check(release:"SUSE15.0", cpu:"x86_64", reference:"ncurses5-devel-32bit-6.1-lp150.9.1") ) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get()); else security_warning(0); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "libncurses5 / libncurses5-debuginfo / libncurses6 / etc"); }
NASL family PhotonOS Local Security Checks NASL id PHOTONOS_PHSA-2020-1_0-0281_NCURSES.NASL description An update of the ncurses package has been released. last seen 2020-03-17 modified 2020-03-02 plugin id 134207 published 2020-03-02 reporter This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/134207 title Photon OS 1.0: Ncurses PHSA-2020-1.0-0281 code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from VMware Security Advisory PHSA-2020-1.0-0281. The text # itself is copyright (C) VMware, Inc. include('compat.inc'); if (description) { script_id(134207); script_version("1.2"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/03/03"); script_cve_id("CVE-2019-17594", "CVE-2019-17595"); script_name(english:"Photon OS 1.0: Ncurses PHSA-2020-1.0-0281"); script_set_attribute(attribute:"synopsis", value: "The remote PhotonOS host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "An update of the ncurses package has been released."); script_set_attribute(attribute:"see_also", value:"https://github.com/vmware/photon/wiki/Security-Updates-1.0-281.md"); script_set_attribute(attribute:"solution", value: "Update the affected Linux packages."); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:N/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:L/I:N/A:L"); script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C"); script_set_attribute(attribute:"cvss_score_source", value:"CVE-2019-17595"); script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available"); script_set_attribute(attribute:"vuln_publication_date", value:"2019/10/14"); script_set_attribute(attribute:"patch_publication_date", value:"2020/02/28"); script_set_attribute(attribute:"plugin_publication_date", value:"2020/03/02"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:vmware:photonos:ncurses"); script_set_attribute(attribute:"cpe", value:"cpe:/o:vmware:photonos:1.0"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"PhotonOS Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/PhotonOS/release", "Host/PhotonOS/rpm-list"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/PhotonOS/release"); if (isnull(release) || release !~ "^VMware Photon") audit(AUDIT_OS_NOT, "PhotonOS"); if (release !~ "^VMware Photon (?:Linux|OS) 1\.0(\D|$)") audit(AUDIT_OS_NOT, "PhotonOS 1.0"); if (!get_kb_item("Host/PhotonOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "PhotonOS", cpu); flag = 0; if (rpm_check(release:"PhotonOS-1.0", cpu:"x86_64", reference:"ncurses-6.0-10.ph1")) flag++; if (rpm_check(release:"PhotonOS-1.0", cpu:"x86_64", reference:"ncurses-compat-6.0-10.ph1")) flag++; if (rpm_check(release:"PhotonOS-1.0", cpu:"x86_64", reference:"ncurses-debuginfo-6.0-10.ph1")) flag++; if (rpm_check(release:"PhotonOS-1.0", cpu:"x86_64", reference:"ncurses-devel-6.0-10.ph1")) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_WARNING, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family SuSE Local Security Checks NASL id SUSE_SU-2019-2997-1.NASL description This update for ncurses fixes the following issues : Security issues fixed : CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036). CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037). Non-security issue fixed: Removed screen.xterm from terminfo database (bsc#1103320). Note that Tenable Network Security has extracted the preceding description block directly from the SUSE 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 131159 published 2019-11-20 reporter This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131159 title SUSE SLED15 / SLES15 Security Update : ncurses (SUSE-SU-2019:2997-1) code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from SUSE update advisory SUSE-SU-2019:2997-1. # The text itself is copyright (C) SUSE. # include("compat.inc"); if (description) { script_id(131159); script_version("1.2"); script_cvs_date("Date: 2019/12/09"); script_cve_id("CVE-2019-17594", "CVE-2019-17595"); script_name(english:"SUSE SLED15 / SLES15 Security Update : ncurses (SUSE-SU-2019:2997-1)"); script_summary(english:"Checks rpm output for the updated packages."); script_set_attribute( attribute:"synopsis", value:"The remote SUSE host is missing one or more security updates." ); script_set_attribute( attribute:"description", value: "This update for ncurses fixes the following issues : Security issues fixed : CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036). CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037). Non-security issue fixed: Removed screen.xterm from terminfo database (bsc#1103320). Note that Tenable Network Security has extracted the preceding description block directly from the SUSE 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://bugzilla.suse.com/show_bug.cgi?id=1103320" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.suse.com/show_bug.cgi?id=1154036" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.suse.com/show_bug.cgi?id=1154037" ); script_set_attribute( attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2019-17594/" ); script_set_attribute( attribute:"see_also", value:"https://www.suse.com/security/cve/CVE-2019-17595/" ); # https://www.suse.com/support/update/announcement/2019/suse-su-20192997-1/ script_set_attribute( attribute:"see_also", value:"http://www.nessus.org/u?b2b58b87" ); script_set_attribute( attribute:"solution", value: "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or 'zypper patch'. Alternatively you can run the command listed for your product : SUSE Linux Enterprise Module for Open Buildservice Development Tools 15-SP1:zypper in -t patch SUSE-SLE-Module-Development-Tools-OBS-15-SP1-2019-2997=1 SUSE Linux Enterprise Module for Legacy Software 15-SP1:zypper in -t patch SUSE-SLE-Module-Legacy-15-SP1-2019-2997=1 SUSE Linux Enterprise Module for Legacy Software 15:zypper in -t patch SUSE-SLE-Module-Legacy-15-2019-2997=1 SUSE Linux Enterprise Module for Development Tools 15-SP1:zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP1-2019-2997=1 SUSE Linux Enterprise Module for Development Tools 15:zypper in -t patch SUSE-SLE-Module-Development-Tools-15-2019-2997=1 SUSE Linux Enterprise Module for Basesystem 15-SP1:zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP1-2019-2997=1 SUSE Linux Enterprise Module for Basesystem 15:zypper in -t patch SUSE-SLE-Module-Basesystem-15-2019-2997=1" ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses5"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses5-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses5-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses6"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses6-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libncurses6-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-debugsource"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-devel-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-devel-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-utils"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses-utils-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:ncurses5-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:tack"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:tack-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:terminfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:terminfo-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:terminfo-iterm"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:terminfo-screen"); script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:15"); script_set_attribute(attribute:"vuln_publication_date", value:"2019/10/14"); script_set_attribute(attribute:"patch_publication_date", value:"2019/11/18"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/11/20"); 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:"SuSE Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/SuSE/release"); if (isnull(release) || release !~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "SUSE"); os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release); if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE"); os_ver = os_ver[1]; if (! preg(pattern:"^(SLED15|SLES15)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLED15 / SLES15", "SUSE " + os_ver); if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING); cpu = get_kb_item("Host/cpu"); if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH); if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu); sp = get_kb_item("Host/SuSE/patchlevel"); if (isnull(sp)) sp = "0"; if (os_ver == "SLES15" && (! preg(pattern:"^(0|1)$", string:sp))) audit(AUDIT_OS_NOT, "SLES15 SP0/1", os_ver + " SP" + sp); if (os_ver == "SLED15" && (! preg(pattern:"^(0|1)$", string:sp))) audit(AUDIT_OS_NOT, "SLED15 SP0/1", os_ver + " SP" + sp); flag = 0; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"ncurses5-devel-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"libncurses5-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"libncurses5-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"ncurses-devel-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"ncurses-devel-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"libncurses6-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", cpu:"x86_64", reference:"libncurses6-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"libncurses5-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"libncurses5-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses5-devel-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"libncurses6-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"libncurses6-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses-devel-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses-devel-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses-utils-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"ncurses-utils-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"tack-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"tack-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"terminfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"terminfo-base-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"terminfo-iterm-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"1", reference:"terminfo-screen-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"libncurses5-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"libncurses5-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"ncurses-devel-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"ncurses-devel-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"libncurses6-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", cpu:"x86_64", reference:"libncurses6-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"libncurses5-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"libncurses5-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses5-devel-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"libncurses6-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"libncurses6-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses-devel-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses-devel-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses-utils-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"ncurses-utils-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"tack-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"tack-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"terminfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"terminfo-base-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"terminfo-iterm-6.1-5.6.2")) flag++; if (rpm_check(release:"SLES15", sp:"0", reference:"terminfo-screen-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"ncurses5-devel-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"ncurses-devel-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"ncurses-devel-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"libncurses6-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", cpu:"x86_64", reference:"libncurses6-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"libncurses6-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"libncurses6-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"ncurses-devel-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"ncurses-devel-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"ncurses-utils-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"ncurses-utils-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"tack-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"tack-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"terminfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"terminfo-base-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"terminfo-iterm-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"1", reference:"terminfo-screen-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"ncurses-devel-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"ncurses-devel-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"libncurses6-32bit-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", cpu:"x86_64", reference:"libncurses6-32bit-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"libncurses6-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"libncurses6-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"ncurses-debugsource-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"ncurses-devel-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"ncurses-devel-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"ncurses-utils-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"ncurses-utils-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"tack-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"tack-debuginfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"terminfo-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"terminfo-base-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"terminfo-iterm-6.1-5.6.2")) flag++; if (rpm_check(release:"SLED15", sp:"0", reference:"terminfo-screen-6.1-5.6.2")) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get()); else security_warning(0); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family Huawei Local Security Checks NASL id EULEROS_SA-2020-1206.NASL description According to the versions of the ncurses packages installed, the EulerOS Virtualization for ARM 64 installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-03-19 modified 2020-03-13 plugin id 134495 published 2020-03-13 reporter This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/134495 title EulerOS Virtualization for ARM 64 3.0.2.0 : ncurses (EulerOS-SA-2020-1206) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(134495); script_version("1.2"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/03/19"); script_cve_id( "CVE-2019-17594", "CVE-2019-17595" ); script_name(english:"EulerOS Virtualization for ARM 64 3.0.2.0 : ncurses (EulerOS-SA-2020-1206)"); script_summary(english:"Checks the rpm output for the updated packages."); script_set_attribute(attribute:"synopsis", value: "The remote EulerOS Virtualization for ARM 64 host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "According to the versions of the ncurses packages installed, the EulerOS Virtualization for ARM 64 installation on the remote host is affected by the following vulnerabilities : - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues."); # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2020-1206 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?dca593a1"); script_set_attribute(attribute:"solution", value: "Update the affected ncurses packages."); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:N/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:L/I:N/A:L"); 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:"patch_publication_date", value:"2020/03/13"); script_set_attribute(attribute:"plugin_publication_date", value:"2020/03/13"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-libs"); script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:uvp:3.0.2.0"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Huawei Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/uvp_version"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/EulerOS/release"); if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS"); uvp = get_kb_item("Host/EulerOS/uvp_version"); if (uvp != "3.0.2.0") audit(AUDIT_OS_NOT, "EulerOS Virtualization 3.0.2.0"); if (!get_kb_item("Host/EulerOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu); if ("aarch64" >!< cpu) audit(AUDIT_ARCH_NOT, "aarch64", cpu); flag = 0; pkgs = ["ncurses-5.9-14.20130511.h6", "ncurses-base-5.9-14.20130511.h6", "ncurses-libs-5.9-14.20130511.h6"]; foreach (pkg in pkgs) if (rpm_check(release:"EulerOS-2.0", reference:pkg)) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_WARNING, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
NASL family SuSE Local Security Checks NASL id OPENSUSE-2019-2551.NASL description This update for ncurses fixes the following issues : Security issues fixed : - CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036). - CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037). Non-security issue fixed : - Removed screen.xterm from terminfo database (bsc#1103320). This update was imported from the SUSE:SLE-15:Update update project. last seen 2020-06-01 modified 2020-06-02 plugin id 131279 published 2019-11-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/131279 title openSUSE Security Update : ncurses (openSUSE-2019-2551) code # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from openSUSE Security Update openSUSE-2019-2551. # # The text description of this plugin is (C) SUSE LLC. # include("compat.inc"); if (description) { script_id(131279); script_version("1.2"); script_cvs_date("Date: 2019/12/09"); script_cve_id("CVE-2019-17594", "CVE-2019-17595"); script_name(english:"openSUSE Security Update : ncurses (openSUSE-2019-2551)"); script_summary(english:"Check for the openSUSE-2019-2551 patch"); script_set_attribute( attribute:"synopsis", value:"The remote openSUSE host is missing a security update." ); script_set_attribute( attribute:"description", value: "This update for ncurses fixes the following issues : Security issues fixed : - CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036). - CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037). Non-security issue fixed : - Removed screen.xterm from terminfo database (bsc#1103320). This update was imported from the SUSE:SLE-15:Update update project." ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1103320" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154036" ); script_set_attribute( attribute:"see_also", value:"https://bugzilla.opensuse.org/show_bug.cgi?id=1154037" ); script_set_attribute( attribute:"solution", value:"Update the affected ncurses packages." ); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses5-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libncurses6-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-debugsource"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel-32bit-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-devel-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-utils"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses-utils-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses5-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:ncurses5-devel-32bit"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:tack"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:tack-debuginfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo-iterm"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:terminfo-screen"); script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:15.1"); script_set_attribute(attribute:"vuln_publication_date", value:"2019/10/14"); script_set_attribute(attribute:"patch_publication_date", value:"2019/11/23"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/11/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:"SuSE Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/SuSE/release"); if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE"); if (release !~ "^(SUSE15\.1)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "15.1", release); if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING); ourarch = get_kb_item("Host/cpu"); if (!ourarch) audit(AUDIT_UNKNOWN_ARCH); if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch); flag = 0; if ( rpm_check(release:"SUSE15.1", reference:"libncurses5-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"libncurses5-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"libncurses6-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"libncurses6-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"ncurses-debugsource-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"ncurses-devel-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"ncurses-devel-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"ncurses-utils-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"ncurses-utils-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"ncurses5-devel-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"tack-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"tack-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"terminfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"terminfo-base-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"terminfo-iterm-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", reference:"terminfo-screen-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"libncurses5-32bit-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"libncurses5-32bit-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"libncurses6-32bit-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"libncurses6-32bit-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"ncurses-devel-32bit-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"ncurses-devel-32bit-debuginfo-6.1-lp151.6.3.1") ) flag++; if ( rpm_check(release:"SUSE15.1", cpu:"x86_64", reference:"ncurses5-devel-32bit-6.1-lp151.6.3.1") ) flag++; if (flag) { if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get()); else security_warning(0); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "libncurses5 / libncurses5-debuginfo / libncurses6 / etc"); }
NASL family Huawei Local Security Checks NASL id EULEROS_SA-2019-2634.NASL description According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - In ncurses 6.1, there is a NULL pointer dereference at function _nc_parse_entry in parse_entry.c that will lead to a denial of service attack. The product proceeds to the dereference code path even after a last seen 2020-05-08 modified 2019-12-18 plugin id 132169 published 2019-12-18 reporter This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/132169 title EulerOS 2.0 SP3 : ncurses (EulerOS-SA-2019-2634) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(132169); script_version("1.3"); script_set_attribute(attribute:"plugin_modification_date", value:"2020/05/07"); script_cve_id( "CVE-2017-13728", "CVE-2017-13729", "CVE-2017-13730", "CVE-2017-13731", "CVE-2017-13732", "CVE-2017-13733", "CVE-2017-13734", "CVE-2018-19211", "CVE-2019-17594", "CVE-2019-17595" ); script_name(english:"EulerOS 2.0 SP3 : ncurses (EulerOS-SA-2019-2634)"); script_summary(english:"Checks the rpm output for the updated packages."); script_set_attribute(attribute:"synopsis", value: "The remote EulerOS host is missing multiple security updates."); script_set_attribute(attribute:"description", value: "According to the versions of the ncurses packages installed, the EulerOS installation on the remote host is affected by the following vulnerabilities : - In ncurses 6.1, there is a NULL pointer dereference at function _nc_parse_entry in parse_entry.c that will lead to a denial of service attack. The product proceeds to the dereference code path even after a 'dubious character `*' in name or alias field' detection.(CVE-2018-19211) - There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17594) - There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.(CVE-2019-17595) - There is an illegal address access in the _nc_safe_strcat function in strings.c in ncurses 6.0 that will lead to a remote denial of service attack.(CVE-2017-13734) - There is an illegal address access in the _nc_save_str function in alloc_entry.c in ncurses 6.0. It will lead to a remote denial of service attack.(CVE-2017-13729) - There is an illegal address access in the fmt_entry function in progs/dump_entry.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13733) - There is an illegal address access in the function _nc_read_entry_source() in progs/tic.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13730) - There is an illegal address access in the function dump_uses() in progs/dump_entry.c in ncurses 6.0 that might lead to a remote denial of service attack.(CVE-2017-13732) - There is an illegal address access in the function postprocess_termcap() in parse_entry.c in ncurses 6.0 that will lead to a remote denial of service attack.(CVE-2017-13731) - There is an infinite loop in the next_char function in comp_scan.c in ncurses 6.0, related to libtic. A crafted input will lead to a remote denial of service attack.(CVE-2017-13728) Note that Tenable Network Security has extracted the preceding description block directly from the EulerOS security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues."); # https://developer.huaweicloud.com/ict/en/site-euleros/euleros/security-advisories/EulerOS-SA-2019-2634 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?7501c79d"); script_set_attribute(attribute:"solution", value: "Update the affected ncurses packages."); script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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:"patch_publication_date", value:"2019/12/18"); script_set_attribute(attribute:"plugin_publication_date", value:"2019/12/18"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-base"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-devel"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-libs"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:huawei:euleros:ncurses-term"); script_set_attribute(attribute:"cpe", value:"cpe:/o:huawei:euleros:2.0"); script_set_attribute(attribute:"generated_plugin", value:"current"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Huawei Local Security Checks"); script_copyright(english:"This script is Copyright (C) 2019-2020 and is owned by Tenable, Inc. or an Affiliate thereof."); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/EulerOS/release", "Host/EulerOS/rpm-list", "Host/EulerOS/sp"); script_exclude_keys("Host/EulerOS/uvp_version"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("rpm.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); release = get_kb_item("Host/EulerOS/release"); if (isnull(release) || release !~ "^EulerOS") audit(AUDIT_OS_NOT, "EulerOS"); if (release !~ "^EulerOS release 2\.0(\D|$)") audit(AUDIT_OS_NOT, "EulerOS 2.0"); sp = get_kb_item("Host/EulerOS/sp"); if (isnull(sp) || sp !~ "^(3)$") audit(AUDIT_OS_NOT, "EulerOS 2.0 SP3"); uvp = get_kb_item("Host/EulerOS/uvp_version"); if (!empty_or_null(uvp)) audit(AUDIT_OS_NOT, "EulerOS 2.0 SP3", "EulerOS UVP " + uvp); if (!get_kb_item("Host/EulerOS/rpm-list")) 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$" && "aarch64" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "EulerOS", cpu); if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_ARCH_NOT, "i686 / x86_64", cpu); flag = 0; pkgs = ["ncurses-5.9-13.20130511.h5", "ncurses-base-5.9-13.20130511.h5", "ncurses-devel-5.9-13.20130511.h5", "ncurses-libs-5.9-13.20130511.h5", "ncurses-term-5.9-13.20130511.h5"]; foreach (pkg in pkgs) if (rpm_check(release:"EulerOS-2.0", sp:"3", reference:pkg)) flag++; if (flag) { security_report_v4( port : 0, severity : SECURITY_WARNING, extra : rpm_report_get() ); exit(0); } else { tested = pkg_tests_get(); if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested); else audit(AUDIT_PACKAGE_NOT_INSTALLED, "ncurses"); }
References
- https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html
- https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00013.html
- http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html
- http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html
- https://security.gentoo.org/glsa/202101-28