CVE-2022-49044·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: dm integrity: fix memory corruption when tag_size is less than digest size It is possible to set up dm-integrity in such a way that the "tag_size" parameter is less than the actual digest size. In this situation, a part of the digest beyond tag_size is ignored. In this case, dm-integrity would write beyond the end of the ic->recalc_tags array and corrupt memory. The corruption happened in integrity_recalc->integrity_sector_checksum->crypto_shash_final. Fix this corruption by increasing the tags array so that it has enough padding at the end to accomodate the loop in integrity_recalc() being able to write a full digest size for the last member of the tags array.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.17.4
- Published
- 2025-02-26
Affected versions
From: 5.16
Until: 5.17.4
Fixed in: 5.17.4
How to fix this CVE
Update your Linux kernel to version 5.17.4 or later to resolve a memory corruption vulnerability in dm-integrity. This flaw occurs when the tag_size parameter is configured smaller than the digest size, causing writes beyond allocated buffer boundaries. Apply the security patch immediately to prevent potential system instability and data corruption on systems using dm-integrity with mismatched tag and digest sizes.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Run 'uname -r' to retrieve the currently installed kernel version and verify if it falls within the affected range (5.16.x to 5.17.3)
- Check if dm-integrity is active on your system by running 'sudo dmsetup table | grep integrity' or 'sudo lsmod | grep dm_integrity'
- If dm-integrity is in use, query the tag_size and digest_size configuration with 'sudo dmsetup status' and compare against the device's crypto algorithm digest length
- Verify the patch application by checking 'uname -r' returns 5.17.4 or later, and confirm no memory corruption symptoms in 'dmesg' logs after reboot
FAQ
What is CVE-2022-49044?
CVE-2022-49044 is a memory corruption vulnerability in the Linux kernel's dm-integrity subsystem that occurs when the tag_size configuration parameter is set smaller than the cryptographic digest size, allowing out-of-bounds writes to kernel memory.
Is CVE-2022-49044 being actively exploited?
No, CVE-2022-49044 is not listed on the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits are currently available. However, the high CVSS score (7.8) warrants prompt patching.
What versions of Kernel are affected by CVE-2022-49044?
Linux kernel versions 5.16.0 through 5.17.3 are affected. Kernel 5.17.4 and later versions contain the fix.
How do I check if my server is vulnerable to CVE-2022-49044?
Run 'uname -r' to check your kernel version; if it shows 5.16.x or 5.17.0 through 5.17.3, then verify dm-integrity usage with 'sudo lsmod | grep dm_integrity' and 'sudo dmsetup table | grep integrity'.
Does Defensia detect CVE-2022-49044?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2022-49044 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/08c1af8f1c13bbf210f1760132f4df24d0ed46d6
- https://git.kernel.org/stable/c/4d485cf9b609709e45d5113e6e2b1b01254b2fe9
- https://git.kernel.org/stable/c/6a95d91c0b315c965198f6ab7dec7c94129e17e0
- https://git.kernel.org/stable/c/6b4bf97587ef6c1927a78934b700204920655123
- https://git.kernel.org/stable/c/7f84c937222944c03f4615ca4742df6bed0e5adf
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2022-49044. Free for 1 server.
Get started free