PT-2026-121960
CVE-2026-98983
·
Publicado
2026-10-23
·
Atualizado
2026-10-23
Descrição por
Pontuação
N/A
Não disponívelNão há classificações de severidade ou métricas disponíveis. Quando houver, atualizaremos as informações correspondentes na página.
In the Linux kernel, the following vulnerability has been resolved:
unshare: don't drop active namespace references that were never taken
Active references on the namespaces of an nsproxy are taken when the
nsproxy is installed into a task in switch task namespaces() and
copy namespaces() and dropped again by put nsproxy() through
deactivate nsproxy().
But ksys unshare() calls put nsproxy() on an nsproxy that was never
installed when set cred ucounts() fails. The new namespaces of that
nsproxy go from zero to minus one and the namespaces shared with the
caller lose a reference that belongs to the nsproxy the caller keeps
using:
WARNING: kernel/nscommon.c:171 at ns ref active put+0x1cd/0x230
nsproxy ns active put
deactivate nsproxy
ksys unshare
Afterwards the namespaces the caller lives in aren't listed by listns()
anymore. set cred ucounts() only fails when alloc ucounts() can't
allocate and it only allocates when the real uid of the caller differs
from its effective uid.
Commit cefd55bd2159 ("nsproxy: fix free nsproxy() and simplify
create new namespaces()") separated the two cases on purpose.
nsproxy free() frees an nsproxy that was prepared but never installed
and that's what a failed setns() uses in put nsset(). Export it and use
it for a failed unshare() as well.
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾