Kwetsberens yn e2fsck by it ferwurkjen fan spesjaal ûntwurpen mappen

Yn it e2fsck-hulpprogramma levere as ûnderdiel fan it pakket e2fprogs, identifisearre kwetsberens (CVE-2019-5188), wêrtroch jo de koade fan in oanfaller kinne útfiere by it kontrolearjen fan in bestânsysteem dat spesjaal ûntworpen mappen befettet. De kwetsberens waard befêstige yn releases 1.43.3 nei 1.45.4. Kwetsberens fêst yn update e2fsck 1.45.5. Yn distribúsjekits bliuwt it probleem noch net korrizjearre (Debian, Bôge Linux, SUSE/openSUSE, Ubuntu, RHEL).

De kwetsberens wurdt feroarsake troch in flater yn de mutate_name () funksje yn de rehash.c triem, dat wurdt brûkt by it opbouwen fan de hash tabellen ferbûn mei in triemtafel, soargje derfoar dat alle triemmen yn de triemtafel binne oerienkomt mei de map. Korrupsje fan 'e hash_entry-struktuer ferbûn mei in map kin resultearje yn in oanfaller dy't gegevens skriuwt nei in gebiet bûten de tawiisde buffer. As ferskate bestannen mei deselde namme yn 'e hash-tabel identifisearre wurde as keppele oan in map, feroaret it e2fsck-hulpprogramma de dûbele bestannen troch ~0, ~1, ensfh. oan de namme ta te foegjen. Om de nije namme tydlik op te slaan by sa'n omneaming, wurdt in buffer fan 256 bytes grut op 'e stapel tawiisd.

De grutte fan de te kopiearjen gegevens wurdt bepaald troch de útdrukking "entry->name_len & 0xff", mar de wearde fan entry->name_len wurdt laden fan in struktuer op skiif ynstee fan berekkene út de werklike grutte fan de namme. As de grutte nul is, dan nimt de array-yndeks de wearde -1 en wurde betingsten makke foar heule getal oerstreaming troch de legere grins fan 'e buffer (integer underflow) en oerskriuwe oare gegevens op' e stapel mei de wearde "~0". Foar 64-bit systemen wurdt eksploitaasje fan 'e kwetsberens beoardiele as ûnwierskynlik en fereasket gjin beheiningen op' e stapelgrutte (ulimit -s ûnbeheind). Foar 32-bit systemen wurdt eksploitaasje as mooglik beskôge, mar it resultaat is tige ôfhinklik fan hoe't it útfierber is kompilearre troch de kompilator.

Om in oanfal út te fieren, moat in oanfaller de gegevens op in bepaalde manier korrumpeare yn 'e partysje mei it bestânsysteem ext2, ext3 of ext4. Sûnt dizze operaasje fereasket superuser privileezjes, de kwetsberens foarmet in bedriging as de e2fsck utility scans eksterne skiven of ekstern ûntfongen FS bylden.

Boarne: opennet.ru

Keapje betroubere hosting foar siden mei DDoS-beskerming, VPS VDS-tsjinners 🔥 Keapje betroubere websidehosting mei DDoS-beskerming, VPS VDS-tsjinners | ProHoster