From 064e000b18e10c14c4d2e602d498ec119e62f921 Mon Sep 17 00:00:00 2001 From: Yogita Urade Date: Fri, 21 Jun 2024 11:05:09 +0000 Subject: [PATCH] acpica: fix CVE-2024-24856 The memory allocation function ACPI_ALLOCATE_ZEROED does not guarantee a successful allocation, but the subsequent code directly dereferences the pointer that receives it, which may lead to null pointer dereference. To fix this issue, a null pointer check should be added. If it is null, return exception code AE_NO_MEMORY. Reference: https://nvd.nist.gov/vuln/detail/CVE-2024-24856 (From OE-Core rev: 0920aacb2a042e10e54db949428471ef9b20c96d) Signed-off-by: Yogita Urade Signed-off-by: Steve Sakoman --- .../acpica/acpica/CVE-2024-24856.patch | 33 +++++++++++++++++++ .../acpica/acpica_20211217.bb | 4 ++- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-extended/acpica/acpica/CVE-2024-24856.patch diff --git a/meta/recipes-extended/acpica/acpica/CVE-2024-24856.patch b/meta/recipes-extended/acpica/acpica/CVE-2024-24856.patch new file mode 100644 index 0000000000..beb6a79c8e --- /dev/null +++ b/meta/recipes-extended/acpica/acpica/CVE-2024-24856.patch @@ -0,0 +1,33 @@ +From 4d4547cf13cca820ff7e0f859ba83e1a610b9fd0 Mon Sep 17 00:00:00 2001 +From: Huai-Yuan Liu +Date: Tue, 4 Jun 2024 11:52:15 +0000 +Subject: [PATCH] check null return of ACPI_ALLOCATE_ZEROED in + +AcpiDbConvertToPackage ACPI_ALLOCATE_ZEROED may fails, Elements +might be null and will cause null pointer dereference later. + +Signed-off-by: Huai-Yuan Liu + +CVE: CVE-2024-24856 +Upstream-Status: Backport [https://github.com/acpica/acpica/commit/4d4547cf13cca820ff7e0f859ba83e1a610b9fd0] + +Signed-off-by: Yogita Urade +--- + source/components/debugger/dbconvert.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/source/components/debugger/dbconvert.c b/source/components/debugger/dbconvert.c +index 55307d0..c17a5ab 100644 +--- a/source/components/debugger/dbconvert.c ++++ b/source/components/debugger/dbconvert.c +@@ -354,6 +354,8 @@ AcpiDbConvertToPackage ( + + Elements = ACPI_ALLOCATE_ZEROED ( + DB_DEFAULT_PKG_ELEMENTS * sizeof (ACPI_OBJECT)); ++ if (!Elements) ++ return (AE_NO_MEMORY); + + This = String; + for (i = 0; i < (DB_DEFAULT_PKG_ELEMENTS - 1); i++) +-- +2.40.0 diff --git a/meta/recipes-extended/acpica/acpica_20211217.bb b/meta/recipes-extended/acpica/acpica_20211217.bb index d1727c1dab..ec253b998f 100644 --- a/meta/recipes-extended/acpica/acpica_20211217.bb +++ b/meta/recipes-extended/acpica/acpica_20211217.bb @@ -16,7 +16,9 @@ COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" DEPENDS = "m4-native flex-native bison-native" -SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz" +SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz \ + file://CVE-2024-24856.patch \ + " SRC_URI[sha256sum] = "2511f85828820d747fa3e2c3433d3a38c22db3d9c2fd900e1a84eb4173cb5992" UPSTREAM_CHECK_URI = "https://acpica.org/downloads"