security/keys: fix missed RCU read section on lookup
21Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 7.8epss 0.2%
exploitation probability
0.2%top 93% of all CVEs
observed exploitation
nono source reports it
In the Linux kernel, the following vulnerability has been resolved:
security/keys: fix missed RCU read section on lookup
Nicholas Carlini reports that the keyring code calls assoc_array_find()
in find_key_to_update() without holding the RCU read lock, while the
assoc_array_gc() code really is designed around removing the node from
the tree and then freeing it after an RCU grace-period.
The regular key handling doesn't see this because holding the keyring
semaphore hides any lifetime issues, but the persistent key handling
uses a different model.
Instead of extending the keyring locking, just do the simple RCU locking
that the assoc_array was designed for.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Affected products
Linux · LinuxReferences
https://git.kernel.org/stable/c/43a1e3744548e6fd85873e6fb43e293eb4010694https://git.kernel.org/stable/c/4c5d407ba3ff7f30561ff73ba1b07ed70c864edchttps://git.kernel.org/stable/c/50bb3435a5e627bfbdc52eb4536f49f88b3486b8https://git.kernel.org/stable/c/5659e6923cb72f8e18e8b539109ab512455fe195https://git.kernel.org/stable/c/66288dcadf80974436250e9f70ed848836b835b5https://git.kernel.org/stable/c/cefa4265b11176c897a7d9e8e54d89e3701c5584