Ytimessä Linux Viides (1, 2, 3) kriittinen haavoittuvuus on tunnistettu kahden viime viikon aikana, ja sen avulla käyttäjä voi laajentaa oikeuksiaan järjestelmässä. Kaksi toimivaa hyväksikäyttötapaa on julkaistu: sshkeysign_pwn mahdollistaa etuoikeutettoman käyttäjän lukea yksityisten SSH-isäntäavainten /etc/ssh/ssh_host_*_key sisällön, ja chage_pwn mahdollistaa etuoikeutettoman käyttäjän lukea käyttäjän salasanahajautuksia sisältävän /etc/shadow-tiedoston sisällön.
Haavoittuvuutta ei ollut tarkoitettu julkistettavaksi, mutta tietoturvatutkija onnistui tunnistamaan haavoittuvuuden ehdotetun kernel-korjauksen perusteella. Korjaus sallii vain root-käyttäjälle tarkoitettujen tiedostojen, kuten /etc/shadow, lukemisen. Ytimen muutos muutti ptrace-funktion get_dumpable()-funktion käyttölogiikkaa ptrace_may_access()-funktion käyttöoikeustasojen määrittämisessä.
Haavoittuvuuden aiheuttaa kilpailutilanne, joka sallii oikeudettoman pääsyn pidfd-tiedostokuvaajaan sen jälkeen, kun tiedostoon on päästy käsiksi suid-pääkäyttäjän kautta. Tiedoston avaamisen ja suid-ohjelman oikeuksien palauttamisen (esimerkiksi setreuid-funktion avulla) välillä syntyy tilanne, jossa suid-pääkäyttäjän prosessia suorittava sovellus voi käyttää suid-ohjelman avaamaa tiedostoa pidfd-kuvaajan kautta, vaikka tiedoston käyttöoikeudet eivät sitä sallisi.
Hyödynnettävä ikkuna syntyy, koska "__ptrace_may_access()"-funktio ohittaa tiedostojen käyttöoikeuksien tarkistamisen, jos task->mm-kenttä on asetettu arvoon NULL exit_mm():n jälkeen, mutta ennen exit_files():n kutsumista. Tällä hetkellä pidfd_getfd-järjestelmäkutsu olettaa, että kutsuvan prosessin käyttäjätunnus (uid) vastaa tiedostoon pääsyyn oikeutettua käyttäjätunnusta. On syytä huomata, että tämä ongelma käsiteltiin aiemmin vuonna 2020, mutta sitä ei ole vielä korjattu.
/etc/shadow-kansion sisällön haltuun ottaneessa hyökkäyksessä hyökkäys koostuu /usr/bin/chage-sovelluksen toistuvasta käynnistämisestä fork+execl-komennolla suid-root-lipulla, joka lukee /etc/shadow-kansion sisällön. Prosessin haarautumisen jälkeen suoritetaan pidfd_open-järjestelmäkutsu ja suoritetaan silmukka, jossa käydään läpi käytettävissä olevat pidfd-deskriptorit pidfd_getfd-järjestelmäkutsulla ja ne tarkistetaan /proc/self/fd-tiedoston kautta. sshkeysign_pwn-hyväksynnän tapauksessa vastaavia manipulaatioita tehdään suid-root-ssh-keysign-ohjelmalla.
Ongelmalle ei ole vielä annettu CVE-tunnistetta, eikä kernelin ja pakettien päivityksiä ole julkaistu jakeluissa. Haavoittuvuus on edelleen korjaamaton muutama tunti sitten julkaistuissa kernelien versioissa 7.0.7, 6.18.30 ja 6.12.88. Kirjoitushetkellä vain korjaustiedostoa voi käyttää. Mahdollisia kiertoteitä keskustellaan parhaillaan, kuten sysctl kernel.yama.ptrace_scope=3:n asettaminen tai suid-root-lipun poistaminen järjestelmän suoritettavista tiedostoista (ainakin hyökkäyksissä käytetyistä ssh-keysign- ja chage-apuohjelmista).
Päivitys: Haavoittuvuudelle on annettu tunniste CVE-2026-46333. Ytimen päivitykset on luotu. Linux 7.0.8, 6.18.31, 6.12.89, 6.6.139, 6.1.173, 5.15.207 ja 5.10.256 haavoittuvuuksien korjauksin. Näiden jakeluiden haavoittuvuuksien korjausten tila voidaan arvioida näillä sivuilla: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora.
Lähde: opennet.ru
