Oracle Linux 9 : httpd (ELSA-2026-88229)
10
10
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Oracle Linux Security Advisory ELSA-2026-88229.
##
include('compat.inc');
if (description)
{
script_id(371065);
script_version("1.1");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/10/23");
script_cve_id(
"CVE-2026-46729",
"CVE-2026-48005",
"CVE-2026-56153",
"CVE-2026-56154",
"CVE-2026-63045",
"CVE-2026-63292",
"CVE-2026-63686",
"CVE-2026-63718",
"CVE-2026-73636",
"CVE-2026-73637",
"CVE-2026-93546"
);
script_name(english:"Oracle Linux 9 : httpd (ELSA-2026-88229)");
script_set_attribute(attribute:"synopsis", value:
"The remote Oracle Linux host is missing one or more security updates.");
script_set_attribute(attribute:"description", value:
"The remote Oracle Linux 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the
ELSA-2026-88229 advisory.
- Related: RHEL-275261 - httpd: Arbitrary code execution via oversized Host
header in mod_vhost_alias (CVE-2026-63292)
- Resolves: RHEL-280369 - httpd: Denial of Service via mod_rewrite
lookahead (CVE-2026-56154)
- Resolves: RHEL-275551 CVE-2026-48005 httpd: Denial of service via forged
Authorization headers in mod_auth_digest
- Resolves: RHEL-275338 CVE-2026-73636 httpd: Authentication bypass via
credential replay in mod_auth_digest
- Resolves: RHEL-275229 CVE-2026-73637 httpd: Authentication state corruption
via concurrent Digest authentication requests
- Resolves: RHEL-275323 CVE-2026-56153 httpd: Denial of Service via heap-based
buffer overflow in mod_charset_lite
- Resolves: RHEL-275307 CVE-2026-46729 httpd: mod_heartmonitor: Denial of
Service via NULL pointer dereference
- Resolves: RHEL-275276 CVE-2026-63045 httpd: unauthorized connection to
arbitrary hosts via crafted FTP PASV response
- Resolves: RHEL-275261 CVE-2026-63292 httpd: Arbitrary code execution via
oversized Host header in mod_vhost_alias
- Resolves: RHEL-275245 CVE-2026-63686 httpd: Denial of Service via charset
conversion failure in mod_xml2enc
- Resolves: RHEL-275214 CVE-2026-93546 httpd: Denial of Service via integer
overflow in mod_dav_fs
- Resolves: RHEL-275176 CVE-2026-63718 httpd: HTTP response smuggling via
crafted Transfer-Encoding response in mod_proxy_uwsgi
- Resolves: RHEL-190807 - httpd: use-after-free in mod_ldap
uldap_connection_find via per-directory client cert list
(CVE-2026-29167)
- Resolves: RHEL-192752 - mod_proxy_html regression in CVE-2026-34355 fix
- Resolves: RHEL-186217 - httpd: Apache HTTP Server: Heap-based Buffer Overflow
via malicious backend servers (CVE-2026-34356)
- Resolves: RHEL-182578 - httpd: incomplete fix
for CVE-2023-38709 (CVE-2024-42516)
- Also addresses CVE-2026-24072, CVE-2026-33006, CVE-2026-42535, CVE-2026-43951,
CVE-2026-44119, CVE-2026-44186
- Resolves: RHEL-186186 - httpd: mod_proxy_html buffer handling
vulnerability (CVE-2026-34355)
- Resolves: RHEL-175636 - httpd: mod_dav_lock uses wrong lock discovery
(CVE-2026-29169)
- Resolves: RHEL-186196 - mod_xml2enc: fix bblen accounting in fix_skipto
(CVE-2026-42536)
- Resolves: RHEL-186164 - httpd: fix OCSP write buffer advancement
bug in mod_ssl (CVE-2026-44185)
- Resolves: RHEL-184312 - httpd: ap_regname restrict to reasonable captures
(CVE-2026-44631)
- Resolves: RHEL-173555 - httpd: Apache HTTP Server mod_proxy_ajp: Arbitrary
code execution via heap-based buffer overflow (CVE-2026-28780)
- Resolves: RHEL-175080 - httpd: NULL pointer dereference can cause a child
process crash (CVE-2026-33007)
- Resolves: RHEL-175100 - httpd: off-by-one out-of-bounds reads in AJP getter
functions (CVE-2026-33857)
- Resolves: RHEL-175028 - httpd: heap-based buffer over-read due to missing
null-termination check (CVE-2026-34032)
Tenable has extracted the preceding description block directly from the Oracle Linux 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://linux.oracle.com/errata/ELSA-2026-88229.html");
script_set_attribute(attribute:"solution", value:
"Update the affected packages.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
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:"cvss_score_source", value:"CVE-2026-56154");
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:"2026/10/01");
script_set_attribute(attribute:"patch_publication_date", value:"2026/10/22");
script_set_attribute(attribute:"plugin_publication_date", value:"2026/10/23");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/o:oracle:linux:9");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:httpd");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:httpd-core");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:httpd-devel");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:httpd-filesystem");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:httpd-manual");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:httpd-tools");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:mod_ldap");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:mod_lua");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:mod_proxy_html");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:mod_session");
script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:mod_ssl");
script_set_attribute(attribute:"generated_plugin", value:"current");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Oracle Linux Local Security Checks");
script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("ssh_get_info2.nasl");
script_require_keys("Host/OracleLinux", "Host/RedHat/release", "Host/RedHat/rpm-list", "Host/local_checks_enabled");
exit(0);
}
include('rpm2.inc');
if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_product = get_kb_item('installed_os/local/SSH/0/product');
if (isnull(os_product) || !pregmatch(pattern: "Oracle (?:Linux Server|Enterprise Linux)", string:os_product)) audit(AUDIT_OS_NOT, 'Oracle Linux');
var os_version = get_kb_item('installed_os/local/SSH/0/version');
if (isnull(os_version)) audit(AUDIT_UNKNOWN_APP_VER, 'Oracle Linux');
if (! preg(pattern:"^9([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'Oracle Linux 9.x', 'Oracle Linux ' + os_version);
if (!get_kb_item('Host/RedHat/rpm-list')) audit(AUDIT_PACKAGE_LIST_MISSING);
var 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, 'Oracle Linux', cpu);
var constraints = [
{
'release': '9',
'pkgs': [
{'reference':'httpd-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-core-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-devel-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-filesystem-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-manual-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-tools-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_ldap-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_lua-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_proxy_html-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1'},
{'reference':'mod_session-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_ssl-2.4.62-13.0.1.el9_8.9', 'cpu':'aarch64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1'},
{'reference':'httpd-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-core-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-devel-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-filesystem-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-manual-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'httpd-tools-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_ldap-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_lua-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_proxy_html-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1'},
{'reference':'mod_session-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE},
{'reference':'mod_ssl-2.4.62-13.0.1.el9_8.9', 'cpu':'x86_64', 'rpm_spec_vers_cmp':TRUE, 'epoch':'1'}
]
}
];
var os_release = get_one_kb_item('installed_os/local/SSH/0/release');
var os_sp = get_one_kb_item('Host/*/minor_release');
var flag = 0;
var reference;
var sp;
var _cpu;
var el_string;
var rpm_spec_vers_cmp;
var epoch;
var allowmaj;
var exists_check;
var cves;
foreach var constraint ( constraints ) {
# Check that the target release is equal to the affected release
if (!empty_or_null(constraint['release'])){
if (constraint['release'] != os_release) continue;
}
if (!empty_or_null(constraint['sp'])){
if (constraint['sp'] != os_sp) continue;
}
foreach var pkg ( constraint['pkgs'] ) {
reference = NULL;
sp = NULL;
_cpu = NULL;
el_string = NULL;
rpm_spec_vers_cmp = NULL;
epoch = NULL;
allowmaj = NULL;
exists_check = NULL;
cves = NULL;
if (!empty_or_null(pkg['reference'])) reference = pkg['reference'];
if (!empty_or_null(pkg['sp'])) sp = pkg['sp'];
if (!empty_or_null(pkg['cpu'])) _cpu = pkg['cpu'];
if (!empty_or_null(pkg['el_string'])) el_string = pkg['el_string'];
if (!empty_or_null(pkg['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = pkg['rpm_spec_vers_cmp'];
if (!empty_or_null(pkg['epoch'])) epoch = pkg['epoch'];
if (!empty_or_null(pkg['allowmaj'])) allowmaj = pkg['allowmaj'];
if (!empty_or_null(pkg['exists_check'])) exists_check = pkg['exists_check'];
if (!empty_or_null(pkg['cves'])) cves = pkg['cves'];
if (reference &&
## (no known rpm to check OR known rpm_exists)
(!exists_check || rpm_exists(rpm:exists_check)) &&
rpm_check(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, 'httpd / httpd-core / httpd-devel / etc');
}
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
23 Oct 2026 00:00Current
7.3High risk
Vulners AI Score7.3
CVSS 3.19.8
EPSS0.03914
SSVC