Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: smack: fix cred UAF in smack_file_send_sigiotask() When inspecting the credentials of another task, objective credentials (->real_cred, accessed with __task_cred()) must always be used. Accessing ->cred on a non-current task is forbidden unless that task is being created or destroyed; a task is allowed to change its own ->cred pointer with no synchronization, and changing ->cred should only affect the current syscall. smack_file_send_sigiotask() was accessing both sets of credentials: First tsk->cred, then __task_cred(tsk). Fix it, always access the objective credentials here. I have tested that this bug can lead to a KASAN-reported UAF of struct cred in smack_file_send_sigiotask(), and that this fix prevents the race.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before a512366d84e134a9eefc2cc40eeb6e80e2ec162c; affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before 7c7fe043f3099d0d35002b248967f75e55345b93; affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before f9c7b1f2b9d8f4176d2632743f51400855978ace; affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before b5bcf3adfa27279da4401ab8f1e1a706601a92be; affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before ed64aa505875a3b4defd504ee8e59e1949246a62; affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before b791401bf389a1546a830d2b381ca60fe94c7870; affected 3b11a1decef07c19443d24ae926982bc8ec9f4c0 before fedc88e38ce979a720cd2de042578cb5df3dc8de |
| Linux / Linux | affected 2.6.29; unaffected 0 before 2.6.29; unaffected 5.15.221 through 5.15.*; unaffected 6.1.188 through 6.1.*; unaffected 6.6.157 through 6.6.*; unaffected 6.12.109 through 6.12.*; unaffected 6.18.50 through 6.18.*; unaffected 7.2.4 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/a512366d84e134a9eefc2cc40eeb6e80e2ec162c
- https://git.kernel.org/stable/c/7c7fe043f3099d0d35002b248967f75e55345b93
- https://git.kernel.org/stable/c/f9c7b1f2b9d8f4176d2632743f51400855978ace
- https://git.kernel.org/stable/c/b5bcf3adfa27279da4401ab8f1e1a706601a92be
- https://git.kernel.org/stable/c/ed64aa505875a3b4defd504ee8e59e1949246a62
- https://git.kernel.org/stable/c/b791401bf389a1546a830d2b381ca60fe94c7870
- https://git.kernel.org/stable/c/fedc88e38ce979a720cd2de042578cb5df3dc8de