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 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
geneve: require CAP_NET_ADMIN in the device netns for changelink

In the Linux kernel, the following vulnerability has been resolved: geneve: require CAP_NET_ADMIN in the device netns for changelink A tunnel changelink() operates on at most two netns, dev_net(dev) and the sticky underlay netns geneve->net. They differ once the device is created in or moved to a netns other than the one the request runs in. The rtnl changelink path checks CAP_NET_ADMIN only against dev_net(dev), so a caller privileged there but not in geneve->net can rewrite a geneve device whose underlay lives in geneve->net. geneve_changelink() applies the new configuration against geneve->net: geneve_link_config() and the geneve_quiesce()/geneve_unquiesce() pair reopen the underlay sockets in that netns (geneve_sock_add() uses geneve->net), so the same reasoning as the tunnel changelink series applies here. Gate geneve_changelink() with rtnl_dev_link_net_capable(), at the top of the op before any attribute is parsed, matching ipgre_changelink() and the rest of the "require CAP_NET_ADMIN in the device netns for changelink" series. Found by 0sec automated security-research tooling (https://0sec.ai).

Affected products

Linux
  • <95f45e20f1b2cec13823f0f68060ab4b2261b2c1
  • <2abdacc927c92fa6a9cc8341e8c9b88dcb561553
  • <4.14
  • =<6.6.*
  • ==4.14
  • =<*
  • <9de5518fc1fab583526a8f66b8e505c4864dc60a
  • =<6.18.*
  • =<6.12.*
  • =<7.1.*
  • <f8c498585d2a08aa623748353c3e61467b7e9fd2
  • <8efb8f8bbb353b8f2fdf4f37534c6d96c9f69e01