Description
In the Linux kernel, the following vulnerability has been resolved: net: af_key: zero aligned sockaddr tail in PF_KEY exports PF_KEY export paths use `pfkey_sockaddr_size()` when reserving sockaddr payload space, so IPv6 addresses occupy 32 bytes on the wire. However, `pfkey_sockaddr_fill()` initializes only the first 28 bytes of `struct sockaddr_in6`, leaving the final 4 aligned bytes uninitialized. Not every PF_KEY message is affected. The state and policy dump builders already zero the whole message buffer before filling the sockaddr payloads. Keep the fix to the export paths that still append aligned sockaddr payloads with plain `skb_put()`: - `SADB_ACQUIRE` - `SADB_X_NAT_T_NEW_MAPPING` - `SADB_X_MIGRATE` Fix those paths by clearing only the aligned sockaddr tail after `pfkey_sockaddr_fill()`.
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
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 6df5f90175fe4c584e9960b6c00131a7bf2b5399affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 746ee79d9e140f0e9e56f5123eaa88ad9332de7baffected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < e357c3cf8a44d4ec1f49ad6981e4ab9704354347affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 3c19cb8a84ef709d57943bd6664cf31cb91ba6ecaffected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 11cbf294bac623bd57296f231199193087f57b4aaffected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < edd446ee7cd3d02cac246168063d5b3e9ea68460affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 2e74f974359b5382ecbe8536abbb5b837eb6c724affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 426c355742f02cf743b347d9d7dbdc1bfbfa31efaffected
Linux Linux
Default version status: affected
2.6.12affected0 to < 2.6.12unaffected5.10.270 to ≤ 5.10.*unaffected5.15.221 to ≤ 5.15.*unaffected6.1.188 to ≤ 6.1.*unaffected6.6.143 to ≤ 6.6.*unaffected6.12.88 to ≤ 6.12.*unaffected6.18.30 to ≤ 6.18.*unaffected6.19.14 to ≤ 6.19.*unaffected7.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/6df5f90175fe4c584e9960b6c00131a7bf2b5399 ↗
- https://git.kernel.org/stable/c/746ee79d9e140f0e9e56f5123eaa88ad9332de7b ↗
- https://git.kernel.org/stable/c/e357c3cf8a44d4ec1f49ad6981e4ab9704354347 ↗
- https://git.kernel.org/stable/c/3c19cb8a84ef709d57943bd6664cf31cb91ba6ec ↗
- https://git.kernel.org/stable/c/11cbf294bac623bd57296f231199193087f57b4a ↗
- https://git.kernel.org/stable/c/edd446ee7cd3d02cac246168063d5b3e9ea68460 ↗
- https://git.kernel.org/stable/c/2e74f974359b5382ecbe8536abbb5b837eb6c724 ↗
- https://git.kernel.org/stable/c/426c355742f02cf743b347d9d7dbdc1bfbfa31ef ↗