Zoom for Mac patches get-root bug – update now! PlatoBlockchain Data Intelligence. Vertical Search. Ai.

A Zoom for Mac kijavítja a get-root hibát – frissítsen most!

Patrick Wardle, a Mac kiberbiztonsági kutatója a múlt héten a jól ismert DEF CON biztonsági shindig-en Las Vegasban, Nevadában kiderült „gyökér” a kiváltság emelése (EoP) hiba a Zoom for Mac rendszerben:

A beszédét követő tweetben [2022-08-12] Wardle megjegyezte:

Jelenleg nincs javítás [:RIASZTÁSI EMOJI:] [:EDVARD MUNCH Scream EMOJI:]

A Zoom azonnal dolgozott a hiba javításán, amelyet másnap bejelentettek Zoom biztonsági közlemény ZSB-22018, kiérdemel egy gratulációt válasz Wardle-től a folyamatban:

Mahalos a @Zoomnak a (hihetetlenül) gyors megoldásért! [: MINDKÉT KEZÜNK AZ ÜNNEPELÉSRE EMLÉKEZTETTEK ÉS AZ EMOJI HANGOLÁSA:] [: TENNYEREK ÖSSZENYOMOTT A SZELLEMI JÓAkarat JEGYÉBEN EMOJI:]

Nulladik napi közzététel

Tekintettel arra a látszólagos gyorsaságra és könnyedségre, amellyel a Zoom képes volt javítani a hibára, szinkronizálva CVE-2022 28756-, valószínűleg kíváncsi vagy, hogy Wardle miért nem szólt előre a Zoomnak a hibáról, és beszéde napját tűzte ki a részletek felfedésének határidejévé.

Ez időt kapott volna a Zoom-nak, hogy a frissítést sok Mac-felhasználója számára elérhetővé tegye (vagy legalábbis elérhetővé tegye azok számára, akik hisznek korai patch/patch gyakran), megszüntetve ezzel a szakadékot Wardle, aki elmagyarázza a világnak, hogyan kell visszaélni a hibával, és a hiba javítása között.

Valójában úgy tűnik, hogy Wardle minden tőle telhetőt megtett, hogy figyelmeztesse a Zoomot erről a hibáról, valamint néhány hónappal ezelőtt a Zoom automatikus frissítési folyamatának egy csomó, egymással összefüggő hibájáról.

Wardle elmagyarázza a hibafeltárási idővonalat a diák a DEF CON előadásából, és felsorolja az általa felfedezett hibákkal kapcsolatos Zoom-frissítések folyamát.

Kétélű kard

A Wardle által tárgyalt hibák általában a Zoom automatikus frissítési mechanizmusára vonatkoztak, amely minden olyan szoftver ökoszisztéma része, amely egy kicsit kétélű kard – erősebb fegyver, mint egy hagyományos kard, de ennek megfelelően nehezebb biztonságosan kezelni.

Az automatikus frissítés minden modern kliens alkalmazás kötelező eleme, mivel megkönnyíti és gyorsabbá teszi a kritikus javítások terjesztését, így segíti a felhasználókat a kiberbiztonsági rések megbízható bezárásában.

De az automatikus frissítés tengernyi kockázatot rejt magában, nem utolsósorban azért, mert magának a frissítőeszköznek jellemzően gyökérszintű rendszer-hozzáférésre van szüksége.

Ennek az az oka, hogy a frissítő feladata az alkalmazásszoftver felülírása (amit egy átlagos felhasználónak nem szabadna megtennie), és esetleg privilegizált operációs rendszer-parancsokat indítani a konfiguráció vagy más rendszerszintű változtatások elvégzéséhez.

Más szóval, ha a fejlesztők nem vigyáznak, akkor éppen az az eszköz, amely segíti őket naprakészen és biztonságosabban tartani a mögöttes alkalmazást, egy olyan úttörővé válhat, amelyből a támadók felforgathatják a biztonságot azáltal, hogy ráveszik a frissítőt, hogy jogosulatlan parancsokat futtasson rendszerjogosultságokkal. .

Nevezetesen, az automatikus frissítési programoknak gondoskodniuk kell a hitelesség az általuk letöltött frissítési csomagok közül, hogy megakadályozzák a támadókat, hogy egyszerűen egy hamis frissítési csomagot tápláljanak, kiegészítve rosszindulatú programokkal.

Fenn kell tartaniuk a sértetlenség a frissítési fájlok közül, amelyeket végül felhasználnak, így a helyi támadó ne tudja alattomosan módosítani az éppen letöltött „ellenőrzött biztonságos” frissítési csomagot a lekérés és az aktiválás közötti rövid idő alatt.

Az eredetiség-ellenőrzés kikerülése

Ahogy Wardle kifejti a sajátjában papír, az egyik általa felfedezett és feltárt hiba a fent felsorolt ​​első lépés hibája volt, amikor a Zoom automatikus frissítője megpróbálta ellenőrizni az éppen letöltött frissítőcsomag hitelességét.

Ahelyett, hogy a hivatalos macOS API-kat használták volna a letöltés digitális aláírásának közvetlen ellenőrzésére, a Zoom fejlesztői úgy döntöttek, hogy a hitelesítést közvetetten végzik el, a macOS segédprogram futtatásával. pkgutil --check-signature a háttérben és a kimenetet vizsgálva.

Itt egy példa pkgutil kimenet, a régi verzió használatával Zoom.pkg szoftvercsomag:

$ pkgutil --check-signature Zoom.pkg "Zoom.pkg" csomag: Állapot: az Apple által forgalmazásra kiadott fejlesztői tanúsítvánnyal aláírva Megbízható időbélyeggel aláírva: 2022-06-27 01:26:22 +0000 tanúsítványlánc : 1. Fejlesztői azonosító telepítője: Zoom Video Communications, Inc. (BJ4HAAB9B3) Lejár: 2027-02-01 22:12:15 +0000 SHA256 Ujjlenyomat: 6D 70 1A 84 F0 5A D4 C1 C1 B3 AEEF01F FB 2F 1C A2 9 5 A6 80 48 FF B4 F76 60 BB 5C ----------------------------------- ------------------------------------- 0. Fejlesztői azonosító tanúsító hatóság lejár: 57-8-2 2027:02:01 +22 SHA12 Ujjlenyomat: 15A FC 0000D 256 A7 9F 01 A6 DE 2 03 2 96D 37A FE 93 6 4D 68D E09 0D 2 F1 8C 03 BA CF B2-9-88 -------------------------------------------------- -------------- 0. Apple Root CA lejár: 1-63-58 7:3:2035 +02 SHA09 Ujjlenyomat: B21 B40 36 0000E CB C256 FF 0 1 73 0C 7 F45 05 14E 2E DA 49B CA ED 1E 29C 5 C6 BE 6 B7 A2 68 5 F91 5

Sajnos, ahogy Wardle felfedezte, amikor visszafordította a Zoom aláírás-ellenőrző kódját, a Zoom frissítő nem dolgozta fel a pkgutil adatokat ugyanúgy, mint az emberi megfigyelők.

A kimenetet a hasznos vizuális sorrend követésével ellenőrizzük.

Először először keressük meg a kívánt állapotot, pl signed by a developer certificate issued by Apple for distribution.

Aztán megkerestük az alcímet Certificate Chain:.

Végül ellenőrizzük, hogy a lánc a következő három aláíróból áll-e, a megfelelő sorrendben:

  1. Zoom Video Communications, Inc. 2. Fejlesztői azonosító tanúsító hatóság 3. Apple Root CA

Meglepő módon a Zoom kódja egyszerűen ellenőrizte, hogy a fenti három karakterlánc mindegyike megfelel-e (még a Zoom saját egyedi azonosítóját sem ellenőrizte BJ4HAAB9B3) felbukkant valahol a kimenetben pkgutil.

Tehát egy abszurd, de érvényes névvel rendelkező csomag létrehozása, mint pl Zoom Video Communications, Inc. Developer ID Certification Authority Apple Root CA.pkg rávenné a csomagellenőrzőt, hogy megtalálja a keresett „identitáskarakterláncokat”.

A teljes csomagnév visszhangzik a pkgutil kimeneti fejléc az első sorban, ahol a Zoom szerencsétlen „ellenőrzője” a kimenet rossz részén található mindhárom szöveges karakterláncra illeszkedne.

Így a „biztonsági” ellenőrzés triviálisan megkerülhető.

Részleges javítás

Wardle azt mondja, hogy a Zoom végül kijavította ezt a hibát, több mint hét hónappal azután, hogy bejelentette, időben a DEF CON számára…

…de a javítás felhelyezése után észrevette, hogy a frissítési folyamatban még mindig tátong egy lyuk.

A frissítő megpróbálta a helyes dolgot tenni:

  • 1. Helyezze át a letöltött csomagot a root tulajdonában lévő könyvtárba, és így elméletileg tiltva minden rendszeres felhasználó számára.
  • 2. Ellenőrizze a letöltött csomag kriptográfiai aláírását, hivatalos API-k használatával, nem pedig szövegegyeztetéssel pkgutil kimenet.
  • 3. Szüntesse meg a letöltött csomagfájl archiválását, verziószámának ellenőrzése, a leminősítési támadások megelőzése érdekében.
  • 4. Telepítse a letöltött csomagfájlt, az automatikus frissítési folyamat root jogosultságait használva.

Sajnos annak ellenére, hogy a frissítési csomag tárolására használt könyvtár a root tulajdonában volt, megpróbálva megvédeni a kíváncsi felhasználóktól, akik megpróbálják felforgatni a frissítési fájlt használat közben…

…az újonnan letöltött csomagfájl „világ írható” maradt az új helyén (mellékhatás, hogy egy normál fiókból, nem pedig a root által töltötték le).

Ezzel a helyi támadók kiskaput kaptak a frissítési csomag módosításához után a digitális aláírás érvényesítése megtörtént (2. lépés), befolyásolása nélkül a verzióellenőrzés részletei (3. lépés), de előtt a telepítő átvette az irányítást a csomagfájl felett, hogy root jogosultsággal dolgozza fel (4. lépés).

Ezt a fajta hibát a versenyfeltétel, mert a támadóknak időzíteniük kell a befejezést, hogy közvetlenül a telepítő megkezdése előtt hazaérjenek, és ezért a rosszindulatú változtatásokat közvetlenül előtte kell végrehajtaniuk.

Ezt a fajta sebezhetőséget az egzotikus hangzású mozaikszó is hallani fogja TOCTOU, röviden az ellenőrzési időtől a használati időig, egy név, amely egyértelműen emlékeztet arra, hogy ha túlságosan előre ellenőrzi a tényeket, előfordulhat, hogy azok már elavultak, mire hagyatkozik rájuk.

A TOCTOU-probléma az, hogy az Egyesült Királyságban az autókölcsönző cégek már nem egyszerűen csak azt kérik, hogy lássák a vezetői engedélyét, amelyet akár 10 éve is kiadhattak volna, és azóta több okból felfüggesztették vagy törölték volna, valószínűleg azért, mert a nem biztonságos vagy illegális vezetés miatt. A fizikai jogosítvánnyal együtt egy egyszeri alfanumerikus „a legutóbbi érvényesség igazolása” kódot is be kell mutatnia, amelyet az elmúlt 21 napban adtak ki, hogy a TOCTOU lehetséges eltérését 10 évről mindössze három hétre csökkentse.

A javítás megérkezett

Wardle szerint a Zoom megakadályozta ezt a hibát azáltal, hogy megváltoztatta a hozzáférési jogokat a fenti 1. lépésben átmásolt frissítési csomagfájlban.

Az aláírás-ellenőrzéshez, a verzióellenőrzéshez és a végső gyökérszintű telepítéshez használt fájlhoz mostantól mindig csak a root fiók férhet hozzá.

Ez eltávolítja a versenyfeltételt, mert egy nem jogosult támadó nem tudja módosítani a fájlt a 2. lépés (az ellenőrzés sikeres) és a 4. lépés kezdete (megkezdődik a telepítés).

Ahhoz, hogy módosítsa a csomagfájlt annak érdekében, hogy a rendszer becsapja a root hozzáférést, akkor már root hozzáféréssel kell rendelkeznie, így eleve nincs szükség ilyen EoP hibára.

A TOCTOU probléma nem érvényesül, mert a 2. lépésben végrehajtott ellenőrzés mindaddig érvényes marad, amíg a fájl használata el nem kezdődik, és nem hagy lehetőséget arra, hogy a csekk érvénytelenné váljon.

Mit kell tenni?

Ha Mac gépen használja a Zoom-ot, nyissa meg az alkalmazást, majd a menüsorban lépjen a következőre zoom.us > Check for Updates...

Ha elérhető frissítés, megjelenik az új verzió, és rákattinthat [Install] a javítások felhelyezéséhez:

Zoom for Mac patches get-root bug – update now! PlatoBlockchain Data Intelligence. Vertical Search. Ai.

A kívánt verzió az 5.11.5 (9788) vagy későbbi.


Időbélyeg:

Még több Meztelen biztonság