Amazon Linux 2022 has multiple security vulnerabilities in vim affecting confidentiality and system availability.
Reporter | Title | Published | Views | Family All 199 |
---|---|---|---|---|
![]() | Fedora: Security Advisory for vim (FEDORA-2021-b0ac29efb1) | 20 Dec 202100:00 | – | openvas |
![]() | Mageia: Security Advisory (MGASA-2021-0535) | 28 Jan 202200:00 | – | openvas |
![]() | Huawei EulerOS: Security Advisory for vim (EulerOS-SA-2022-1248) | 26 Feb 202200:00 | – | openvas |
![]() | Huawei EulerOS: Security Advisory for vim (EulerOS-SA-2022-1260) | 26 Feb 202200:00 | – | openvas |
![]() | Fedora: Security Advisory for vim (FEDORA-2021-5cd9df120e) | 4 Dec 202100:00 | – | openvas |
![]() | Huawei EulerOS: Security Advisory for vim (EulerOS-SA-2022-1283) | 2 Mar 202200:00 | – | openvas |
![]() | Fedora: Security Advisory for vim (FEDORA-2021-cfadac570a) | 18 Nov 202100:00 | – | openvas |
![]() | Huawei EulerOS: Security Advisory for vim (EulerOS-SA-2022-1389) | 13 Apr 202200:00 | – | openvas |
![]() | Fedora: Security Advisory for vim (FEDORA-2021-58ab85548d) | 14 Nov 202100:00 | – | openvas |
![]() | Huawei EulerOS: Security Advisory for vim (EulerOS-SA-2022-1415) | 13 Apr 202200:00 | – | openvas |
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Amazon Linux 2022 Security Advisory ALAS2022-2021-005.
##
include('compat.inc');
if (description)
{
script_id(212471);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2024/12/12");
script_cve_id(
"CVE-2021-3903",
"CVE-2021-3927",
"CVE-2021-3928",
"CVE-2021-3968",
"CVE-2021-3973",
"CVE-2021-3974",
"CVE-2021-3984"
);
script_name(english:"Amazon Linux 2022 : vim-common, vim-data, vim-default-editor (ALAS2022-2021-005)");
script_set_attribute(attribute:"synopsis", value:
"The remote Amazon Linux 2022 host is missing a security update.");
script_set_attribute(attribute:"description", value:
"It is, therefore, affected by multiple vulnerabilities as referenced in the ALAS2022-2021-005 advisory.
vim is vulnerable to Heap-based Buffer Overflow (CVE-2021-3903)
A flaw was found in vim. A possible heap-based buffer overflow could allow an attacker to input a
specially crafted file leading to a crash or code execution. The highest threat from this vulnerability is
to data confidentiality and integrity as well as system availability. (CVE-2021-3927)
A flaw was found in vim. A possible stack-based buffer overflow could allow an attacker to input a
specially crafted file leading to a crash or code execution. The highest threat from this vulnerability is
to data confidentiality and integrity as well as system availability. (CVE-2021-3928)
A flaw was found in vim. A possible heap use-after-free vulnerability could allow an attacker to input a
specially crafted file leading to a crash or code execution. The highest threat from this vulnerability is
to system availability. (CVE-2021-3968)
A flaw was found in vim. A possible heap-based buffer overflow could allow an attacker to input a
specially crafted file leading to a crash or code execution. The highest threat from this vulnerability is
to system availability. (CVE-2021-3973)
A flaw was found in vim. A possible use-after-free vulnerability could allow an attacker to input a
specially crafted file leading to a crash or code execution. The highest threat from this vulnerability is
to system availability. (CVE-2021-3974)
A flaw was found in vim. A possible heap-based buffer overflow allows an attacker to input a specially
crafted file, leading to a crash or code execution. The highest threat from this vulnerability is
confidentiality, integrity, and system availability. (CVE-2021-3984)
Tenable has extracted the preceding description block directly from the tested product security advisory.
Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/AL2022/ALAS-2021-005.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3903.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3927.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3928.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3968.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3973.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3974.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2021-3984.html");
script_set_attribute(attribute:"solution", value:
"Run 'dnf update --releasever=2022.0.20211217 vim' to update your system.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H");
script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2021-3973");
script_set_attribute(attribute:"cvss3_score_source", value:"CVE-2021-3968");
script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
script_set_attribute(attribute:"exploit_available", value:"true");
script_set_attribute(attribute:"vuln_publication_date", value:"2021/10/27");
script_set_attribute(attribute:"patch_publication_date", value:"2021/12/17");
script_set_attribute(attribute:"plugin_publication_date", value:"2024/12/11");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-X11");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-X11-debuginfo");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-common");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-common-debuginfo");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-data");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-debuginfo");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-debugsource");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-default-editor");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-enhanced");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-enhanced-debuginfo");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-filesystem");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-minimal");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:vim-minimal-debuginfo");
script_set_attribute(attribute:"cpe", value:"cpe:/o:amazon:linux:2022");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Amazon Linux Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2024 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info.nasl");
script_require_keys("Host/local_checks_enabled", "Host/AmazonLinux/release", "Host/AmazonLinux/rpm-list");
exit(0);
}
include("rpm.inc");
if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var alas_release = get_kb_item("Host/AmazonLinux/release");
if (isnull(alas_release) || !strlen(alas_release)) audit(AUDIT_OS_NOT, "Amazon Linux");
var os_ver = pregmatch(pattern: "^AL(A|\d+|-\d+)", string:alas_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Amazon Linux");
os_ver = os_ver[1];
if (os_ver != "-2022")
{
if (os_ver == 'A') os_ver = 'AMI';
audit(AUDIT_OS_NOT, "Amazon Linux 2022", "Amazon Linux " + os_ver);
}
if (!get_kb_item("Host/AmazonLinux/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
var pkgs = [
{'reference':'vim-common-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-common-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-common-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-common-debuginfo-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-common-debuginfo-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-common-debuginfo-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-data-8.2.3642-2.amzn2022', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debuginfo-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debuginfo-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debuginfo-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debugsource-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debugsource-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debugsource-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-default-editor-8.2.3642-2.amzn2022', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-debuginfo-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-debuginfo-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-debuginfo-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-filesystem-8.2.3642-2.amzn2022', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-debuginfo-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-debuginfo-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-debuginfo-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-X11-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-X11-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-X11-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-X11-debuginfo-8.2.3642-2.amzn2022', 'cpu':'aarch64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-X11-debuginfo-8.2.3642-2.amzn2022', 'cpu':'i686', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-X11-debuginfo-8.2.3642-2.amzn2022', 'cpu':'x86_64', 'release':'AL-2022', 'rpm_spec_vers_cmp':TRUE}
];
var flag = 0;
foreach var package_array ( pkgs ) {
var reference = NULL;
var _release = NULL;
var sp = NULL;
var _cpu = NULL;
var el_string = NULL;
var rpm_spec_vers_cmp = NULL;
var epoch = NULL;
var allowmaj = NULL;
var exists_check = NULL;
var cves = NULL;
if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
if (!empty_or_null(package_array['release'])) _release = package_array['release'];
if (!empty_or_null(package_array['sp'])) sp = package_array['sp'];
if (!empty_or_null(package_array['cpu'])) _cpu = package_array['cpu'];
if (!empty_or_null(package_array['el_string'])) el_string = package_array['el_string'];
if (!empty_or_null(package_array['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = package_array['rpm_spec_vers_cmp'];
if (!empty_or_null(package_array['epoch'])) epoch = package_array['epoch'];
if (!empty_or_null(package_array['allowmaj'])) allowmaj = package_array['allowmaj'];
if (!empty_or_null(package_array['exists_check'])) exists_check = package_array['exists_check'];
if (!empty_or_null(package_array['cves'])) cves = package_array['cves'];
if (reference && _release && (!exists_check || rpm_exists(release:_release, rpm:exists_check))) {
if (rpm_check(release:_release, sp:sp, cpu:_cpu, reference:reference, epoch:epoch, el_string:el_string, rpm_spec_vers_cmp:rpm_spec_vers_cmp, allowmaj:allowmaj, cves:cves)) flag++;
}
}
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_HOLE,
extra : rpm_report_get()
);
exit(0);
}
else
{
var tested = pkg_tests_get();
if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
else audit(AUDIT_PACKAGE_NOT_INSTALLED, "vim-X11 / vim-X11-debuginfo / vim-common / etc");
}
Transform Your Security Services
Elevate your offerings with Vulners' advanced Vulnerability Intelligence. Contact us for a demo and discover the difference comprehensive, actionable intelligence can make in your security strategy.
Book a live demo