CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
LOW
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
AI Score
Confidence
Low
EPSS
Percentile
53.2%
It is, therefore, affected by multiple vulnerabilities as referenced in the ALAS-2024-1902 advisory.
Vim is an open source command line text editor. When closing a window, vim may try to access already freed window structure. Exploitation beyond crashing the application has not been shown to be viable. This issue has been addressed in commit 25aabc2b
which has been included in release version 9.0.2106. Users are advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48231)
Vim is an open source command line text editor. If the count after the :s command is larger than what fits into a (signed) long variable, abort with e_value_too_large. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit ac6378773
which has been included in release version 9.0.2108. Users are advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48233)
Vim is an open source command line text editor. When getting the count for a normal mode z command, it may overflow for large counts given. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit 58f9befca1
which has been included in release version 9.0.2109. Users are advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48234)
Vim is an open source command line text editor. When parsing relative ex addresses one may unintentionally cause an overflow. Ironically this happens in the existing overflow check, because the line number becomes negative and LONG_MAX - lnum will cause the overflow. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit 060623e
which has been included in release version 9.0.2110. Users are advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48235)
Vim is an open source command line text editor. When using the z= command, the user may overflow the count with values larger than MAX_INT. Impact is low, user interaction is required and a crash may not even happen in all situations. This vulnerability has been addressed in commit 73b2d379
which has been included in release version 9.0.2111. Users are advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48236)
Vim is an open source command line text editor. In affected versions when shifting lines in operator pending mode and using a very large value, it may be possible to overflow the size of integer. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit 6bf131888
which has been included in version 9.0.2112. Users are advised to upgrade.
There are no known workarounds for this vulnerability. (CVE-2023-48237)
Note that Nessus has not tested for these issues but has instead relied only on the application’s self-reported version number.
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Amazon Linux AMI Security Advisory ALAS-2024-1902.
##
include('compat.inc');
if (description)
{
script_id(187709);
script_version("1.0");
script_set_attribute(attribute:"plugin_modification_date", value:"2024/01/09");
script_cve_id(
"CVE-2023-48231",
"CVE-2023-48233",
"CVE-2023-48234",
"CVE-2023-48235",
"CVE-2023-48236",
"CVE-2023-48237"
);
script_name(english:"Amazon Linux AMI : vim (ALAS-2024-1902)");
script_set_attribute(attribute:"synopsis", value:
"The remote Amazon Linux AMI host is missing a security update.");
script_set_attribute(attribute:"description", value:
"It is, therefore, affected by multiple vulnerabilities as referenced in the ALAS-2024-1902 advisory.
- Vim is an open source command line text editor. When closing a window, vim may try to access already freed
window structure. Exploitation beyond crashing the application has not been shown to be viable. This issue
has been addressed in commit `25aabc2b` which has been included in release version 9.0.2106. Users are
advised to upgrade. There are no known workarounds for this vulnerability. (CVE-2023-48231)
- Vim is an open source command line text editor. If the count after the :s command is larger than what fits
into a (signed) long variable, abort with e_value_too_large. Impact is low, user interaction is required
and a crash may not even happen in all situations. This issue has been addressed in commit `ac6378773`
which has been included in release version 9.0.2108. Users are advised to upgrade. There are no known
workarounds for this vulnerability. (CVE-2023-48233)
- Vim is an open source command line text editor. When getting the count for a normal mode z command, it may
overflow for large counts given. Impact is low, user interaction is required and a crash may not even
happen in all situations. This issue has been addressed in commit `58f9befca1` which has been included in
release version 9.0.2109. Users are advised to upgrade. There are no known workarounds for this
vulnerability. (CVE-2023-48234)
- Vim is an open source command line text editor. When parsing relative ex addresses one may unintentionally
cause an overflow. Ironically this happens in the existing overflow check, because the line number becomes
negative and LONG_MAX - lnum will cause the overflow. Impact is low, user interaction is required and a
crash may not even happen in all situations. This issue has been addressed in commit `060623e` which has
been included in release version 9.0.2110. Users are advised to upgrade. There are no known workarounds
for this vulnerability. (CVE-2023-48235)
- Vim is an open source command line text editor. When using the z= command, the user may overflow the count
with values larger than MAX_INT. Impact is low, user interaction is required and a crash may not even
happen in all situations. This vulnerability has been addressed in commit `73b2d379` which has been
included in release version 9.0.2111. Users are advised to upgrade. There are no known workarounds for
this vulnerability. (CVE-2023-48236)
- Vim is an open source command line text editor. In affected versions when shifting lines in operator
pending mode and using a very large value, it may be possible to overflow the size of integer. Impact is
low, user interaction is required and a crash may not even happen in all situations. This issue has been
addressed in commit `6bf131888` which has been included in version 9.0.2112. Users are advised to upgrade.
There are no known workarounds for this vulnerability. (CVE-2023-48237)
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/ALAS-2024-1902.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-48231.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-48233.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-48234.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-48235.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-48236.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/cve/html/CVE-2023-48237.html");
script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/faqs.html");
script_set_attribute(attribute:"solution", value:
"Run 'yum update vim' to update your system.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/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:N/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-2023-48237");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"vuln_publication_date", value:"2023/11/16");
script_set_attribute(attribute:"patch_publication_date", value:"2024/01/03");
script_set_attribute(attribute:"plugin_publication_date", value:"2024/01/09");
script_set_attribute(attribute:"plugin_type", value:"local");
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-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-enhanced");
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:xxd");
script_set_attribute(attribute:"cpe", value:"cpe:/o:amazon:linux");
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 != "A")
{
if (os_ver == 'A') os_ver = 'AMI';
audit(AUDIT_OS_NOT, "Amazon Linux AMI", "Amazon Linux " + os_ver);
}
if (!get_kb_item("Host/AmazonLinux/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
var pkgs = [
{'reference':'vim-common-9.0.2120-1.87.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-common-9.0.2120-1.87.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-data-9.0.2120-1.87.amzn1', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debuginfo-9.0.2120-1.87.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-debuginfo-9.0.2120-1.87.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-9.0.2120-1.87.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-enhanced-9.0.2120-1.87.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-filesystem-9.0.2120-1.87.amzn1', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-9.0.2120-1.87.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'vim-minimal-9.0.2120-1.87.amzn1', 'cpu':'x86_64', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'xxd-9.0.2120-1.87.amzn1', 'cpu':'i686', 'release':'ALA', 'rpm_spec_vers_cmp':TRUE},
{'reference':'xxd-9.0.2120-1.87.amzn1', 'cpu':'x86_64', 'release':'ALA', '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;
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 (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)) flag++;
}
}
if (flag)
{
security_report_v4(
port : 0,
severity : SECURITY_WARNING,
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-common / vim-data / vim-debuginfo / etc");
}
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48231
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48233
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48234
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48235
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48236
cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48237
alas.aws.amazon.com/ALAS-2024-1902.html
alas.aws.amazon.com/cve/html/CVE-2023-48231.html
alas.aws.amazon.com/cve/html/CVE-2023-48233.html
alas.aws.amazon.com/cve/html/CVE-2023-48234.html
alas.aws.amazon.com/cve/html/CVE-2023-48235.html
alas.aws.amazon.com/cve/html/CVE-2023-48236.html
alas.aws.amazon.com/cve/html/CVE-2023-48237.html
alas.aws.amazon.com/faqs.html
CVSS3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
REQUIRED
Scope
UNCHANGED
Confidentiality Impact
NONE
Integrity Impact
NONE
Availability Impact
LOW
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:L
AI Score
Confidence
Low
EPSS
Percentile
53.2%