mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-10-21 08:08:29 +00:00
freeipmi: patch CVE-2026-85505
Backport commit from v1.6.19 matching NVD description. Details: https://nvd.nist.gov/vuln/detail/cve-2026-85505 Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com> Signed-off-by: Anuj Mittal <anuj.mittal@oss.qualcomm.com>
This commit is contained in:
1 parent
c28637052d
commit
99bc8bd93a
2 files changed
+50
No files matched your search
@@ -0,0 +1,49 @@
|
|||||||
|
From e479401fcd9588f1ffb7444e09b97afc29f21f82 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Albert L Chu <chu11@llnl.gov>
|
||||||
|
Date: Mon, 17 Aug 2026 16:55:00 -0700
|
||||||
|
Subject: [PATCH] ipmi-oem: clamp Fujitsu SEL long-text truncate copy to actual
|
||||||
|
data
|
||||||
|
|
||||||
|
ipmi_oem_fujitsu_get_sel_entry_long_text, in the "truncate if there is
|
||||||
|
overflow" branch, copied a fixed
|
||||||
|
IPMI_OEM_FUJITSU_SEL_ENTRY_LONG_TEXT_MAX_DATA_LENGTH - offset bytes from
|
||||||
|
&bytes_rs[16] into data_buf regardless of how many bytes the BMC
|
||||||
|
actually returned. bytes_rs is filled only to rs_len and is not
|
||||||
|
memset, so a short response left the memcpy reading uninitialized stack
|
||||||
|
past the real data. The read stayed within the 256-byte bytes_rs and
|
||||||
|
the data_buf destination, so it was an uninitialized read, not an
|
||||||
|
out-of-bounds access.
|
||||||
|
|
||||||
|
The truncate branch is entered only when offset + component_length
|
||||||
|
exceeds data_length, so data_length - offset is both the number of bytes
|
||||||
|
needed to fill data_buf to data_length and strictly less than
|
||||||
|
component_length (= strlen of the NUL-terminated response data), hence
|
||||||
|
always within the received bytes. Copy that amount instead of the fixed
|
||||||
|
maximum.
|
||||||
|
|
||||||
|
Assisted-by: Claude (Opus 4.8) <noreply@anthropic.com>
|
||||||
|
(cherry picked from commit 8e0e908c5f11f3ccbf128e09af58568767e6367c)
|
||||||
|
|
||||||
|
CVE: CVE-2026-85505
|
||||||
|
Upstream-Status: Backport [https://cgit.git.savannah.gnu.org/cgit/freeipmi.git/commit/?h=freeipmi-1-6-19&id=8e0e908c5f11f3ccbf128e09af58568767e6367c]
|
||||||
|
|
||||||
|
Dropped changes to the ChangeLog file.
|
||||||
|
|
||||||
|
Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
|
||||||
|
---
|
||||||
|
ipmi-oem/ipmi-oem-fujitsu.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/ipmi-oem/ipmi-oem-fujitsu.c b/ipmi-oem/ipmi-oem-fujitsu.c
|
||||||
|
index 10220c9fc..57d04a0bf 100644
|
||||||
|
--- a/ipmi-oem/ipmi-oem-fujitsu.c
|
||||||
|
+++ b/ipmi-oem/ipmi-oem-fujitsu.c
|
||||||
|
@@ -1400,7 +1400,7 @@ ipmi_oem_fujitsu_get_sel_entry_long_text (ipmi_oem_state_data_t *state_data)
|
||||||
|
{
|
||||||
|
memcpy (data_buf + offset,
|
||||||
|
&bytes_rs[16],
|
||||||
|
- IPMI_OEM_FUJITSU_SEL_ENTRY_LONG_TEXT_MAX_DATA_LENGTH - offset);
|
||||||
|
+ data_length - offset);
|
||||||
|
offset = data_length;
|
||||||
|
}
|
||||||
|
else
|
||||||
@@ -20,6 +20,7 @@ SRC_URI = "${GNU_MIRROR}/freeipmi/freeipmi-${PV}.tar.gz \
|
|||||||
file://CVE-2026-85508.patch \
|
file://CVE-2026-85508.patch \
|
||||||
file://CVE-2026-85507.patch \
|
file://CVE-2026-85507.patch \
|
||||||
file://CVE-2026-85506.patch \
|
file://CVE-2026-85506.patch \
|
||||||
|
file://CVE-2026-85505.patch \
|
||||||
"
|
"
|
||||||
SRC_URI[sha256sum] = "16783d10faa28847a795cce0bf86deeaa72b8fbe71d1f0dc1101d13a6b501ec1"
|
SRC_URI[sha256sum] = "16783d10faa28847a795cce0bf86deeaa72b8fbe71d1f0dc1101d13a6b501ec1"
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user