CVE-2022-49345: Linux Kernel

Medium severity, CVSS 5.5. EPSS: 0.3% chance of exploitation in the next 30 days.

In the Linux kernel, the following vulnerability has been resolved: net: xfrm: unexport __init-annotated xfrm4_protocol_init() EXPORT_SYMBOL and __init is a bad combination because the .init.text section is freed up after the initialization. Hence, modules cannot use symbols annotated __init. The access to a freed symbol may end up with kernel panic. modpost used to detect it, but it has been broken for a decade. Recently, I fixed modpost so it started to warn it again, then this showed up in linux-next builds. There are two ways to fix it: - Remove __init - Remove EXPORT_SYMBOL I chose the latter for this case because the only in-tree call-site, net/ipv4/xfrm4_policy.c is never compiled as modular. (CONFIG_XFRM is boolean)

Affected products

  • Linux Linux Kernel: from 3.15, before 4.9.318 (fixed in 4.9.318); from 4.10, before 4.14.283 (fixed in 4.14.283); from 4.15, before 4.19.247 (fixed in 4.19.247); from 4.20, before 5.4.198 (fixed in 5.4.198); from 5.5, before 5.10.122 (fixed in 5.10.122); from 5.11, before 5.15.47 (fixed in 5.15.47); …

Published 2025-02-26. Last modified 2026-06-17.