Description
In the Linux kernel, the following vulnerability has been resolved: watchdog: pretimeout: Fix UAF in watchdog_unregister_governor() When a watchdog governor is unregistered, it updates existing watchdog devices that were using this governor by falling back to `default_gov`. If the governor being unregistered is currently set as `default_gov`, the `default_gov` is never cleared. This leads to 2 use-after-free issues: 1. New watchdog devices registered after this point will inherit the dangling `default_gov`. 2. Existing watchdog devices using the unregistered governor will have their `wdd->gov` reassigned to the dangling `default_gov`. Fix the UAF by clearing `default_gov` if it matches the governor being unregistered.
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
da0d12ff2b829a35e9921918e925d79497b82bef to < b9ae33faa96bdec6bc60e4c5f8f53786182e4207affectedda0d12ff2b829a35e9921918e925d79497b82bef to < 472ec1e34ff0bb26379805cae808f658cce58c35affectedda0d12ff2b829a35e9921918e925d79497b82bef to < 7a2ee3ec6f208307eca1119a343c7b5d39c03708affectedda0d12ff2b829a35e9921918e925d79497b82bef to < 2e47b91b9b4020fcc01def14d6b6556d66074cf4affectedda0d12ff2b829a35e9921918e925d79497b82bef to < 0ca252720f0e38411cfec3431db9bb1aed0a412caffectedda0d12ff2b829a35e9921918e925d79497b82bef to < 7d1658b066de30f4b23afc14814d22416a971e6eaffectedda0d12ff2b829a35e9921918e925d79497b82bef to < 7993d626983cc58fbde9607333cfd2d57725c197affectedda0d12ff2b829a35e9921918e925d79497b82bef to < 7362ba0f9c96ac3ad6a2ca3995bd9fc9a28a8661affected
Linux Linux
Default version status: affected
4.9affected0 to < 4.9unaffected5.10.265 to ≤ 5.10.*unaffected5.15.216 to ≤ 5.15.*unaffected6.1.183 to ≤ 6.1.*unaffected6.6.148 to ≤ 6.6.*unaffected6.12.101 to ≤ 6.12.*unaffected6.18.42 to ≤ 6.18.*unaffected7.1.6 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/b9ae33faa96bdec6bc60e4c5f8f53786182e4207 ↗
- https://git.kernel.org/stable/c/472ec1e34ff0bb26379805cae808f658cce58c35 ↗
- https://git.kernel.org/stable/c/7a2ee3ec6f208307eca1119a343c7b5d39c03708 ↗
- https://git.kernel.org/stable/c/2e47b91b9b4020fcc01def14d6b6556d66074cf4 ↗
- https://git.kernel.org/stable/c/0ca252720f0e38411cfec3431db9bb1aed0a412c ↗
- https://git.kernel.org/stable/c/7d1658b066de30f4b23afc14814d22416a971e6e ↗
- https://git.kernel.org/stable/c/7993d626983cc58fbde9607333cfd2d57725c197 ↗
- https://git.kernel.org/stable/c/7362ba0f9c96ac3ad6a2ca3995bd9fc9a28a8661 ↗