CVE-2024-50036

Summary

In the Linux kernel, the following vulnerability has been resolved:

net: do not delay dst_entries_add() in dst_release()

dst_entries_add() uses per-cpu data that might be freed at netns dismantle from ip6_route_net_exit() calling dst_entries_destroy()

Before ip6_route_net_exit() can be called, we release all the dsts associated with this netns, via calls to dst_release(), which waits an rcu grace period before calling dst_destroy()

dst_entries_add() use in dst_destroy() is racy, because dst_entries_destroy() could have been called already.

Decrementing the number of dsts must happen sooner.

Notes:

  1. in CONFIG_XFRM case, dst_destroy() can call dst_release_immediate(child), this might also cause UAF if the child does not have DST_NOCOUNT set. IPSEC maintainers might take a look and see how to address this.

  2. There is also discussion about removing this count of dst, which might happen in future kernels.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxf88649721268999bdff09777847080a52004f691 < 547087307bc19417b4f2bc85ba9664a3e8db5a6aaffected
LinuxLinuxf88649721268999bdff09777847080a52004f691 < e3915f028b1f1c37e87542e5aadd33728c259d96affected
LinuxLinuxf88649721268999bdff09777847080a52004f691 < a60db84f772fc3a906c6c4072f9207579c41166faffected
LinuxLinuxf88649721268999bdff09777847080a52004f691 < eae7435b48ffc8e9be0ff9cfeae40af479a609ddaffected
LinuxLinuxf88649721268999bdff09777847080a52004f691 < 3c7c918ec0aa3555372c5a57f18780b7a96c5cfcaffected
LinuxLinuxf88649721268999bdff09777847080a52004f691 < ac888d58869bb99753e7652be19a151df9ecb35daffected
LinuxLinux86e48c03d774e01ccd71ecba4fc4b5c2bc0b5b41affected
LinuxLinux591b1e1bb40152e22cee757f493046a0ca946bf8affected
LinuxLinuxdf90819dafcd6b97fc665f63a15752a570e227a2affected
LinuxLinux9a4fe697023dbe6c25caa1f8b2153af869a29bd2affected
LinuxLinux3.10.50 < 3.11affected
LinuxLinux3.12.26 < 3.13affected
LinuxLinux3.14.14 < 3.15affected
LinuxLinux3.15.7 < 3.16affected
LinuxLinux3.16affected
LinuxLinux0 < 3.16unaffected
LinuxLinux5.10.230 <= 5.10.*unaffected
LinuxLinux5.15.172 <= 5.15.*unaffected
LinuxLinux6.1.117 <= 6.1.*unaffected
LinuxLinux6.6.57 <= 6.6.*unaffected
LinuxLinux6.11.4 <= 6.11.*unaffected
LinuxLinux6.12 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

CVE Program Container

Additional References

References