cve-2022-49885
Vulnerability from cvelistv5
Published
2025-05-01 14:10
Modified
2025-05-01 14:10
Severity ?
EPSS score ?
Summary
ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()
References
{ "containers": { "cna": { "affected": [ { "defaultStatus": "unaffected", "product": "Linux", "programFiles": [ "drivers/acpi/apei/ghes.c", "include/acpi/ghes.h" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "lessThan": "9edf20e5a1d805855e78f241cf221d741b50d482", "status": "affected", "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2", "versionType": "git" }, { "lessThan": "c50ec15725e005e9fb20bce69b6c23b135a4a9b7", "status": "affected", "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2", "versionType": "git" }, { "lessThan": "4c10c854113720cbfe75d4f51db79b700a629e73", "status": "affected", "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2", "versionType": "git" }, { "lessThan": "43d2748394c3feb86c0c771466f5847e274fc043", "status": "affected", "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2", "versionType": "git" } ] }, { "defaultStatus": "affected", "product": "Linux", "programFiles": [ "drivers/acpi/apei/ghes.c", "include/acpi/ghes.h" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "lessThanOrEqual": "5.10.*", "status": "unaffected", "version": "5.10.154", "versionType": "semver" }, { "lessThanOrEqual": "5.15.*", "status": "unaffected", "version": "5.15.78", "versionType": "semver" }, { "lessThanOrEqual": "6.0.*", "status": "unaffected", "version": "6.0.8", "versionType": "semver" }, { "lessThanOrEqual": "*", "status": "unaffected", "version": "6.1", "versionType": "original_commit_for_fix" } ] } ], "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()\n\nChange num_ghes from int to unsigned int, preventing an overflow\nand causing subsequent vmalloc() to fail.\n\nThe overflow happens in ghes_estatus_pool_init() when calculating\nlen during execution of the statement below as both multiplication\noperands here are signed int:\n\nlen += (num_ghes * GHES_ESOURCE_PREALLOC_MAX_SIZE);\n\nThe following call trace is observed because of this bug:\n\n[ 9.317108] swapper/0: vmalloc error: size 18446744071562596352, exceeds total pages, mode:0xcc0(GFP_KERNEL), nodemask=(null),cpuset=/,mems_allowed=0-1\n[ 9.317131] Call Trace:\n[ 9.317134] \u003cTASK\u003e\n[ 9.317137] dump_stack_lvl+0x49/0x5f\n[ 9.317145] dump_stack+0x10/0x12\n[ 9.317146] warn_alloc.cold+0x7b/0xdf\n[ 9.317150] ? __device_attach+0x16a/0x1b0\n[ 9.317155] __vmalloc_node_range+0x702/0x740\n[ 9.317160] ? device_add+0x17f/0x920\n[ 9.317164] ? dev_set_name+0x53/0x70\n[ 9.317166] ? platform_device_add+0xf9/0x240\n[ 9.317168] __vmalloc_node+0x49/0x50\n[ 9.317170] ? ghes_estatus_pool_init+0x43/0xa0\n[ 9.317176] vmalloc+0x21/0x30\n[ 9.317177] ghes_estatus_pool_init+0x43/0xa0\n[ 9.317179] acpi_hest_init+0x129/0x19c\n[ 9.317185] acpi_init+0x434/0x4a4\n[ 9.317188] ? acpi_sleep_proc_init+0x2a/0x2a\n[ 9.317190] do_one_initcall+0x48/0x200\n[ 9.317195] kernel_init_freeable+0x221/0x284\n[ 9.317200] ? rest_init+0xe0/0xe0\n[ 9.317204] kernel_init+0x1a/0x130\n[ 9.317205] ret_from_fork+0x22/0x30\n[ 9.317208] \u003c/TASK\u003e\n\n[ rjw: Subject and changelog edits ]" } ], "providerMetadata": { "dateUpdated": "2025-05-01T14:10:31.286Z", "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux" }, "references": [ { "url": "https://git.kernel.org/stable/c/9edf20e5a1d805855e78f241cf221d741b50d482" }, { "url": "https://git.kernel.org/stable/c/c50ec15725e005e9fb20bce69b6c23b135a4a9b7" }, { "url": "https://git.kernel.org/stable/c/4c10c854113720cbfe75d4f51db79b700a629e73" }, { "url": "https://git.kernel.org/stable/c/43d2748394c3feb86c0c771466f5847e274fc043" } ], "title": "ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()", "x_generator": { "engine": "bippy-1.1.0" } } }, "cveMetadata": { "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "assignerShortName": "Linux", "cveId": "CVE-2022-49885", "datePublished": "2025-05-01T14:10:31.286Z", "dateReserved": "2025-05-01T14:05:17.241Z", "dateUpdated": "2025-05-01T14:10:31.286Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2022-49885\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-05-01T15:16:13.480\",\"lastModified\":\"2025-05-01T15:16:13.480\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()\\n\\nChange num_ghes from int to unsigned int, preventing an overflow\\nand causing subsequent vmalloc() to fail.\\n\\nThe overflow happens in ghes_estatus_pool_init() when calculating\\nlen during execution of the statement below as both multiplication\\noperands here are signed int:\\n\\nlen += (num_ghes * GHES_ESOURCE_PREALLOC_MAX_SIZE);\\n\\nThe following call trace is observed because of this bug:\\n\\n[ 9.317108] swapper/0: vmalloc error: size 18446744071562596352, exceeds total pages, mode:0xcc0(GFP_KERNEL), nodemask=(null),cpuset=/,mems_allowed=0-1\\n[ 9.317131] Call Trace:\\n[ 9.317134] \u003cTASK\u003e\\n[ 9.317137] dump_stack_lvl+0x49/0x5f\\n[ 9.317145] dump_stack+0x10/0x12\\n[ 9.317146] warn_alloc.cold+0x7b/0xdf\\n[ 9.317150] ? __device_attach+0x16a/0x1b0\\n[ 9.317155] __vmalloc_node_range+0x702/0x740\\n[ 9.317160] ? device_add+0x17f/0x920\\n[ 9.317164] ? dev_set_name+0x53/0x70\\n[ 9.317166] ? platform_device_add+0xf9/0x240\\n[ 9.317168] __vmalloc_node+0x49/0x50\\n[ 9.317170] ? ghes_estatus_pool_init+0x43/0xa0\\n[ 9.317176] vmalloc+0x21/0x30\\n[ 9.317177] ghes_estatus_pool_init+0x43/0xa0\\n[ 9.317179] acpi_hest_init+0x129/0x19c\\n[ 9.317185] acpi_init+0x434/0x4a4\\n[ 9.317188] ? acpi_sleep_proc_init+0x2a/0x2a\\n[ 9.317190] do_one_initcall+0x48/0x200\\n[ 9.317195] kernel_init_freeable+0x221/0x284\\n[ 9.317200] ? rest_init+0xe0/0xe0\\n[ 9.317204] kernel_init+0x1a/0x130\\n[ 9.317205] ret_from_fork+0x22/0x30\\n[ 9.317208] \u003c/TASK\u003e\\n\\n[ rjw: Subject and changelog edits ]\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/43d2748394c3feb86c0c771466f5847e274fc043\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/4c10c854113720cbfe75d4f51db79b700a629e73\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9edf20e5a1d805855e78f241cf221d741b50d482\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/c50ec15725e005e9fb20bce69b6c23b135a4a9b7\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}" } }
Loading...
Loading...
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.