Nixpkgs security tracker

Login with GitHub
⚠️ You are using a production deployment that is still only suitable for demo purposes. Any work done in this might be wiped later without notice.

Suggestion detail

Dismissed
(max. allowed matches exceeded)
created 3 weeks, 6 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ovpn: fix use after free in unlock_ovpn()

In the Linux kernel, the following vulnerability has been resolved: ovpn: fix use after free in unlock_ovpn() unlock_ovpn() iterates over the release_list using llist_for_each_entry() and drops the peer reference inside the loop body via ovpn_peer_put(). If this drops the last reference, the peer is eventually freed. However, llist_for_each_entry() reads peer->release_entry.next in the loop advance expression, which runs after the body. By that time the peer may have already been freed, resulting in a use after free when advancing to the next list entry. Fix this by using llist_for_each_entry_safe(), which caches the next pointer before executing the loop body.

Affected products

Linux
  • ==6.16
  • <6.16
  • =<*
  • <e1ad6fe5db719874efa45b2caf9934552e09fc43
  • =<6.18.*
  • <4cdb209f12a89c5faf9be0c45edb90ccdf65db0c
  • =<7.1.*
  • <5b96227c0e8b212b74838424c929fc889aedb555