Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2022-48809

net: fix a memleak when uncloning an skb dst and its metadata

Description

In the Linux kernel, the following vulnerability has been resolved: net: fix a memleak when uncloning an skb dst and its metadata When uncloning an skb dst and its associated metadata, a new dst+metadata is allocated and later replaces the old one in the skb. This is helpful to have a non-shared dst+metadata attached to a specific skb. The issue is the uncloned dst+metadata is initialized with a refcount of 1, which is increased to 2 before attaching it to the skb. When tun_dst_unclone returns, the dst+metadata is only referenced from a single place (the skb) while its refcount is 2. Its refcount will never drop to 0 (when the skb is consumed), leading to a memory leak. Fix this by removing the call to dst_hold in tun_dst_unclone, as the dst+metadata refcount is already 1.

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

  • fc4099f17240767554ff3a73977acb78ef615404 to < 4ac84498fbe84a00e7aef185e2bb3e40ce71eca4affected
  • fc4099f17240767554ff3a73977acb78ef615404 to < c1ff27d100e2670b03cbfddb9117e5f9fc672540affected
  • fc4099f17240767554ff3a73977acb78ef615404 to < 0be943916d781df2b652793bb2d3ae4f9624c10aaffected
  • fc4099f17240767554ff3a73977acb78ef615404 to < a80817adc2a4c1ba26a7aa5f3ed886e4a18dff88affected
  • fc4099f17240767554ff3a73977acb78ef615404 to < 00e6d6c3bc14dfe32824e2c515f0e0f2d6ecf2f1affected
  • fc4099f17240767554ff3a73977acb78ef615404 to < fdcb263fa5cda15b8cb24a641fa2718c47605314affected
  • fc4099f17240767554ff3a73977acb78ef615404 to < 8b1087b998e273f07be13dcb5f3ca4c309c7f108affected
  • fc4099f17240767554ff3a73977acb78ef615404 to < 9eeabdf17fa0ab75381045c867c370f4cc75a613affected

Linux Linux

Default version status: affected

  • 4.3affected
  • 0 to < 4.3unaffected
  • 4.9.302 to ≤ 4.9.*unaffected
  • 4.14.267 to ≤ 4.14.*unaffected
  • 4.19.230 to ≤ 4.19.*unaffected
  • 5.4.180 to ≤ 5.4.*unaffected
  • 5.10.101 to ≤ 5.10.*unaffected
  • 5.15.24 to ≤ 5.15.*unaffected
  • 5.16.10 to ≤ 5.16.*unaffected
  • 5.17 to ≤ *unaffected

References