Skip to main content
← All vulnerabilities
CVE-2024-50210

posix-clock: posix-clock: Fix unbalanced locking in pc_clock_settime()

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.229, 5.15.170, 6.1.115, 6.6.59, 6.11.6
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

In the Linux kernel, the following vulnerability has been resolved: posix-clock: posix-clock: Fix unbalanced locking in pc_clock_settime() If get_clock_desc() succeeds, it calls fget() for the clockid's fd, and get the clk->rwsem read lock, so the error path should release the lock to make the lock balance and fput the clockid's fd to make the refcount balance and release the fd related resource. However the below commit left the error path locked behind resulting in unbalanced locking. Check timespec64_valid_strict() before get_clock_desc() to fix it, because the "ts" is not changed after that. [pabeni@redhat.com: fixed commit message typo]

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • Linux Linux

    From 29f085345cde24566efb751f39e5d367c381c584 · fixed in d005400262ddaf1ca1666bbcd1acf42fe81d57ce; From e0c966bd3e31911b57ef76cec4c5796ebd88e512 · fixed in a8219446b95a859488feaade674d13f9efacfa32; From 673a1c5a2998acbd429d6286e6cad10f17f4f073 · fixed in c7fcfdba35abc9f39b83080c2bce398dad13a943; From c8789fbe2bbf75845e45302cba6ffa44e1884d01 · fixed in e56e0ec1b79f5a6272c6e78b36e9d593aa0449af; From 27abbde44b6e71ee3891de13e1a228aa7ce95bfe · fixed in 5f063bbf1ee6b01611c016b54e050a41506eb794; From a3f169e398215e71361774d13bf91a0101283ac2 · fixed in 1ba33b327c3f88a7baee598979d73ab5b44d41cc; From 1ff7247101af723731ea42ed565d54fb8f341264 · fixed in b27330128eca25179637c1816d5a72d6cc408c66; From d8794ac20a299b647ba9958f6d657051fc51a540 · fixed in 6e62807c7fbb3c758d233018caf94dfea9c65dbd

  • Linux Linux

    From 5.10.228 · fixed in 5.10.229; From 5.15.169 · fixed in 5.15.170; From 6.1.114 · fixed in 6.1.115; From 6.6.58 · fixed in 6.6.59; From 6.11.5 · fixed in 6.11.6

  • KernelLinux

    From 5.10.228 · fixed in 5.10.229; From 5.15.169 · fixed in 5.15.170; From 6.1.114 · fixed in 6.1.115; From 6.6.58 · fixed in 6.6.59; From 6.11.5 · fixed in 6.11.6

References 8

git.kernel.org