
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-31521 is a bounds-checking vulnerability in the Linux kernel module loader's simplify_symbols() function that can cause a kernel panic (denial of service). The module loader fails to validate that a symbol's ELF section index (st_shndx) is within bounds before using it to index the sechdrs array, allowing an out-of-bounds array access when a value such as 0xffff (SHN_XINDEX or SHN_HIRESERVE) is encountered. Affected kernel versions span from 2.6.12.1 up through multiple stable branches, with fixes targeting versions before 5.15.203, 6.1.168, 6.6.131, 6.12.80, 6.18.21, 6.19.11, and 7.0. It carries a CVSS v3.1 base score of 5.5 (Medium) (GitHub Advisory, Red Hat Bugzilla).
The root cause is classified as CWE-1285 (Improper Validation of Specified Index, Position, or Offset in Input) and CWE-787 (Out-of-bounds Write). In simplify_symbols(), the kernel iterates over ELF symbols and, in the default case of the st_shndx switch statement, directly uses sym[i].st_shndx as an array index into info->sechdrs[] without first verifying it falls within the valid section header count. A symbol with st_shndx set to a reserved value like 0xffff (SHN_XINDEX/SHN_HIRESERVE) causes an out-of-bounds memory access, triggering a page fault and kernel panic at simplify_symbols+0x2b2/0x480. The issue was originally discovered due to a bug in llvm-objcopy that could produce ELF modules with such values (GitHub Advisory, Linux Kernel Mailing List).
Successful exploitation results in a kernel panic and complete system crash, causing a denial of service with high availability impact. There is no confidentiality or integrity impact, as the vulnerability does not enable code execution or data exfiltration — the out-of-bounds access leads directly to a fatal exception. The condition can be triggered either by a local user with module-loading privileges supplying a crafted malicious kernel module, or inadvertently through a legitimately built but corrupted module ELF file (GitHub Advisory).
Exploitation requires local access and low privileges (sufficient to load a kernel module), making it a local denial-of-service vector. There is no public proof-of-concept exploit and no evidence of in-the-wild exploitation at this time. The EPSS score is approximately 0.024% (very low probability of exploitation in the near term), and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog (GitHub Advisory, Red Hat Bugzilla).
CAP_SYS_MODULE or root).st_shndx field set to an out-of-bounds value such as 0xffff (SHN_XINDEX or SHN_HIRESERVE) that does not correspond to a valid section header index.insmod or modprobe with the crafted module file to trigger the kernel module loader.simplify_symbols() function processes the malformed symbol, accesses info->sechdrs[0xffff].sh_addr without bounds validation, causes a page fault, and the kernel panics with a fatal exception — crashing the system (GitHub Advisory).dmesg / /var/log/kern.log) entries showing BUG: unable to handle page fault for address: followed by RIP: 0010:simplify_symbols+0x2b2/0x480 and Kernel panic - not syncing: Fatal exception.insmod or modprobe invocations by non-root or low-privilege users immediately before a system crash..ko (kernel object) files in temporary directories (e.g., /tmp, /dev/shm) or non-standard module paths.insmod, modprobe, or kmod from unusual parent processes or user accounts not associated with normal system administration.Apply the available Linux kernel patches that add bounds validation for st_shndx in simplify_symbols(). Fixed versions include: 5.15.203, 6.1.168, 6.6.131, 6.12.80, 6.18.21, 6.19.11, and 7.0. As a workaround, restrict kernel module loading to trusted users only by setting kernel.modules_disabled=1 (if modules are not needed) or enforcing module signature verification via CONFIG_MODULE_SIG_FORCE. Amazon Linux 2023 advisories (ALAS2023-2026-1646, ALAS2023-2026-1681, ALAS2023-2026-1746) and SUSE (SUSE-SU-2026:22048-1) have also issued patched packages (GitHub Advisory, Red Hat Bugzilla).
Fix availability across major Linux distributions and their releases.
bionic (esm-infra)
linux
bionic (fips-updates)
linux-fips
bionic (fips)
linux-fips
devel
linux
focal (esm-infra)
linux
focal (fips-updates)
linux-fips
focal (fips)
linux-fips
jammy
linux: 5.15.0-186.196
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."