A Linux 7.2-rc7 végre kijavít egy „csúnya” versenyhelyzetet, amely 8 éve use-after-free hibához vezetett

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Git változásai között egyből feltűntek a memória-kezeléssel, azaz az „MM”-mel kapcsolatos javítások, amelyek egy régóta fennálló hibát is orvosolnak. Andrew Morton a MM javítások között megjegyezte:

„Lorenzo «mm: fix UAF caused by race between ptdump and vmap pgtable freeing» javítássorozata egy elég régi hibát kezel a ptdump kódban.”

Ez a bizonyos régi hiba nyolc éve van jelen a Linux kernel-ban, a memória-kezelés 2018 márciusában, a Linux 4.16-hoz bevezetett módosításai óta. A PTDUMP a Linux felülete a kernel lap­tábláinak ember által olvasható formában történő kiíratására. Ezt fejlesztők használják security problémák felderítésére, a memória-védelem ellenőrzésére, valamint egyéb hibakeresési és auditálási feladatokra. Kiderült azonban, hogy egy csúnya versenyhelyzet lapult benne, amely use-after-free (UAF) viselkedéshez vezethetett.

Lorenzo Stoakes a mostanra beolvasztott javítócsomagban így magyarázta a PTDUMP körüli hibát:

„Jelenleg csúnya versenyhelyzet áll fenn a ptdump és a vmap között, amikor egy nagy P4D, PMD vagy PUD bejegyzést próbálunk leképezni.

...

Ez azt jelenti, hogy use-after-free válik lehetővé, ha a ptdump lap­tábla-bejárója éppen egy PUD-, PMD- vagy PTE-laptáblát jár be azután, hogy azt már felszabadítottuk.”

A UAF hibát a Syzbot szúrta ki júniusban. Lorenzo egy eredetileg David Carlier által készített javítócsomagot dolgozott át, Claude Opus 4.8 segítségével, hogy pontosan beazonosítsák ezt a UAF problémát. A hibát mostanra kijavították, a javítás bekerült a Linux 7.2-rc7 elé, és várhatóan a következő napokban visszaportolják a stabil Linux kernel verziókba is.