Ata gjetën një cenueshmëri VFS në Linux që lejon përshkallëzimin e privilegjeve

Pak ditë më parë u publikua lajmi se dobësia u identifikua (tashmë e kataloguar nën CVE-2022-0185) dhen API-në e kontekstit të sistemit të skedarëve ofruar nga bërthama linux të cilat mund të lejojnë një përdorues lokal të fitojë privilegje rrënjësore në sistem.

Përmendet se problemi është se një përdorues i paprivilegjuar mund të marrë leje të tilla në një kontejner të izoluar nëse mbështetja për hapësirat e emrave të përdoruesve është e aktivizuar në sistem.

Për shembull, hapësirat e emrave të përdoruesve janë aktivizuar si parazgjedhje në Ubuntu dhe Fedora, por nuk janë të aktivizuara në Debian dhe RHEL (përveç nëse përdoren platformat e izolimit të kontejnerëve). Përveç përshkallëzimit të privilegjeve, cenueshmëria mund të përdoret gjithashtu për të dalë nga një kontejner i izoluar nëse kontejneri ka autoritet CAP_SYS_ADMIN.

Prekshmëria ekziston në funksionin legacy_parse_param() në VFS dhe është për shkak të mungesës së vërtetimit të duhur të madhësisë maksimale të parametrave të dhënë në sistemet e skedarëve që nuk mbështesin API-në e kontekstit të sistemit të skedarëve.

Kohët e fundit, disa miq në ekipin tim CTF Crusaders of Rust dhe unë hasëm një tejmbushje 0-ditore të kernelit Linux. Ne e gjetëm gabimin përmes fuzzimit me syzkaller dhe e zhvilluam shpejt në një shfrytëzim të Ubuntu LPE. Më pas e rishkruam atë për t'i shpëtuar dhe çrrënjosur infrastrukturën e ngurtësuar të Kubernetes CTF të Google. Ky gabim prek të gjitha versionet e kernelit që nga versioni 5.1 (5.16 është aktualisht në progres) dhe i është caktuar CVE-2022-0185. Ne e kemi raportuar tashmë këtë në listën e postimeve të shpërndarjes dhe sigurisë së Linux, dhe defekti është rregulluar që nga publikimi i këtij artikulli.

Kalimi i një parametri shumë të madh mund të shkaktojë tejmbushje të ndryshores së plotë të përdorur për të llogaritur madhësinë e të dhënave që shkruhet; kodi ka një kontroll "if (len > PAGE_SIZE - 2 - size)", i cili nuk funksionon nëse vlera e madhësisë është më e madhe se 4094 për shkak të tejkalimit të numrit të plotë përmes kufirit të poshtëm (tejkalimi i plotë, kur konvertohet 4096 – 2 – 4095 në int të panënshkruar, merr 2147483648).

Ky gabim lejon, kur qaseni në një imazh FS të krijuar posaçërisht, shkaktojnë një tejmbushje buferi dhe mbishkruajnë të dhënat e kernelit pas zonës së caktuar të memories. Për të shfrytëzuar cenueshmërinë, kërkohen të drejtat CAP_SYS_ADMIN, dmth autoriteti i administratorit.

Që nga viti 2022, shokët tanë të skuadrës vendosën të gjenin një ditë 0 në 2022. Ne nuk ishim plotësisht të sigurt se si të fillonim saktësisht, por duke qenë se ekipi ynë kishte një shkallë të lartë familjariteti me dobësitë e kernelit Linux, vendosëm të blinim vetëm disa serverë të dedikuar. dhe ekzekutoni syzkaller fuzzer të Google. Më 6 janar në orën 22:30 PST, chop0 mori raportin e mëposhtëm për një dështim të KASAN në legacy_parse_param: pllakë-jashtë kufijve Shkruaj në legacy_parse_param. Duket se syzbot e gjeti këtë problem vetëm 6 ditë më herët gjatë fuzzimit të Android, por problemi nuk u trajtua dhe ne me naivitet menduam se askush tjetër nuk e vuri re.

Në fund, vlen të theksohet se problemi është shfaqur që nga versioni 5.1 i kernelit Linux dhe është zgjidhur në përditësimet që janë lëshuar pak ditë më parë në versionet 5.16.2, 5.15.16, 5.10.93, 5.4.173.

Përveç kësaj Përditësimet e paketës së dobësisë tashmë janë lëshuar para RHELDebianfedora dhe Ubuntu. Ndërsa zgjidhja nuk është ende e disponueshme në Arch LinuxGentooSUSE y openSUSE.

Në rastin e këtyre, përmendet se si një zgjidhje sigurie për sistemet që nuk përdorin izolimin e kontejnerëve, mund të vendosni vlerën e sysctl "user.max_user_namespaces" në 0:

Studiuesi që identifikoi problemin ka publikuar një demonstrim i një shfrytëzimi que lejon ekzekutimin e kodit si rrënjë në Ubuntu 20.04 në konfigurimin e paracaktuar. Është planifikuar që kodi i shfrytëzimit publikohet në GitHub brenda një jave pas që shpërndarjet lëshojnë një përditësim që rregullon cenueshmërinë.

Më në fund nëse jeni të interesuar të dini më shumë për të, ju mund të kontrolloni detajet në lidhja vijuese.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: AB Internet Networks 2008 SL
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   Galician dijo

    Një arsye tjetër për të mos prekur këputjen me shkop.