What’s Vulnerable › Vulnerabilities
CVE-2022-49044: dm integrity: fix memory corruption when tag_size is less than digest size
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-02-26 · updated 2026-08-13
- Weakness: CWE-787
Description
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.
Affected products
- Linux kernel: from 4.12 before 4.19.240; from 4.20 before 5.4.190; from 5.5 before 5.10.112; from 5.11 before 5.15.35; from 5.16 before 5.17.4; 5.18-rc1, 5.18-rc2 — fixed in 4.19.240, 5.10.112, 5.15.35, 5.17.4, 5.4.190
How to fix
Upgrade to a fixed version: Linux kernel 4.19.240, 5.10.112, 5.15.35, 5.17.4. Check the vendor advisory for mitigations.
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
- https://git.kernel.org/stable/c/cd02b2687d66f0a8e716384de4b9a0671331f1dc
Get alerted when CVE-2022-49044 or the next vulnerability affects your stack