Description
In the Linux kernel, the following vulnerability has been resolved: net: ipv6: unexport __init-annotated seg6_hmac_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 caller (net/ipv6/seg6.c) and the callee (net/ipv6/seg6_hmac.c) belong to the same module. It seems an internal function call in ipv6.ko.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
bf355b8d2c30a289232042cacc1cfaea4923936c to < 64aef8efe96c1616142c4476a05731306fc4494eaffectedbf355b8d2c30a289232042cacc1cfaea4923936c to < ab8b2c2de273ec1d698a18e399896a6febb5cda0affectedbf355b8d2c30a289232042cacc1cfaea4923936c to < 317260b3eb6384a05a8af212308fa50f3b2e8290affectedbf355b8d2c30a289232042cacc1cfaea4923936c to < 5d9c1b081ad28c852a97e10dd75412546497694aaffectedbf355b8d2c30a289232042cacc1cfaea4923936c to < 1084716f76c8045eadf92a9d9a62641f3c8d8c90affectedbf355b8d2c30a289232042cacc1cfaea4923936c to < 3e6de5037148c5a93a436b1e8d2edad3dac11755affectedbf355b8d2c30a289232042cacc1cfaea4923936c to < 9ba4416b831eeb4d185e88e73488d1d21288e63aaffectedbf355b8d2c30a289232042cacc1cfaea4923936c to < 5801f064e35181c71857a80ff18af4dbec3c5f5caffected
Linux Linux
Default version status: affected
4.10affected0 to < 4.10unaffected4.14.283 to ≤ 4.14.*unaffected4.19.247 to ≤ 4.19.*unaffected5.4.198 to ≤ 5.4.*unaffected5.10.122 to ≤ 5.10.*unaffected5.15.47 to ≤ 5.15.*unaffected5.17.15 to ≤ 5.17.*unaffected5.18.4 to ≤ 5.18.*unaffected5.19 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/64aef8efe96c1616142c4476a05731306fc4494e ↗
- https://git.kernel.org/stable/c/ab8b2c2de273ec1d698a18e399896a6febb5cda0 ↗
- https://git.kernel.org/stable/c/317260b3eb6384a05a8af212308fa50f3b2e8290 ↗
- https://git.kernel.org/stable/c/5d9c1b081ad28c852a97e10dd75412546497694a ↗
- https://git.kernel.org/stable/c/1084716f76c8045eadf92a9d9a62641f3c8d8c90 ↗
- https://git.kernel.org/stable/c/3e6de5037148c5a93a436b1e8d2edad3dac11755 ↗
- https://git.kernel.org/stable/c/9ba4416b831eeb4d185e88e73488d1d21288e63a ↗
- https://git.kernel.org/stable/c/5801f064e35181c71857a80ff18af4dbec3c5f5c ↗