A Linux 6.18-rc3 kernelhez három kritikus EROFS javítás érkezett

Gao Xiang, az EROFS fájlrendszer karbantartója új javításokat küldött Linus Torvaldsnak, amelyek a Linux 6.18-rc3 kernelbe kerülnek. A csomag három olyan hibát orvosol, amelyeket Robert Morris jelentett, és amelyek manipulált vagy hibásan létrehozott EROFS lemezképek miatt rendszerösszeomlást vagy végtelen ciklust okozhattak. A javítások célja a fájlrendszer biztonságának és stabilitásának megerősítése, különösen a kódolási és tömörítési indexek kezelésében.

A Linux 6.18-rc3 kernelhez három kritikus EROFS javítás érkezett

Képfájlokból eredő hibák elleni védelem

Az első javítás az EROFS-ben bevezetett, kódolt kiterjesztéseket érinti, amelyek a Linux 6.15 kernel óta részei a rendszernek. Kiderült, hogy bizonyos sérült lemezképek olyan értékeket tartalmazhatnak, amelyek a fizikai blokkcímek hibás feldolgozását okozzák. Ilyen esetben az értékek túlcsordulása vagy az érvénytelen címzések hozzáférést eredményezhettek a memóriahatárokon kívül. A frissítés most kiegészítő érvényességi ellenőrzéseket vezet be, amelyek biztosítják, hogy a fizikai blokkcímek legfeljebb 48 biten belül maradjanak, és minden túlcsordulási kísérletet azonnal hibaként kezel a rendszer.

Végtelen ciklusok megszüntetése a tömörített indexekben

A második hibajavítás egy másik problémát orvosol, amely a tömörített, úgynevezett „subpage compact indexek” feldolgozása során jelentkezett. A hibás képfájlok miatt előfordulhatott, hogy a klaszterelt adatok eltolási értékei túllépték a megengedett határt, ami végtelen ciklushoz vezetett az adatblokkok olvasásakor. A módosítás áthelyezi az ellenőrzéseket a megfelelő betöltési függvényekbe, így a rendszer már a korai szakaszban felismeri az adatkorrupciót, és biztonságosan leállítja a feldolgozást. Emellett a kód logikai sorrendje is javult, hogy a típusellenőrzés mindig az adatok betöltése után történjen, így a hibatűrés konzisztens marad.

Stabilabb kódbázis az EROFS számára a Linux kernelben

A harmadik javítás egy kisebb, de fontos kódtisztítás, amely a z_erofs_extent_lookback függvényt egységesíti, növelve a kód karbantarthatóságát. Ezek a fejlesztések együttesen erősítik az EROFS fájlrendszer robusztusságát, különösen a fuzzing tesztek által felfedett, mesterségesen generált képfájlokkal szemben. A módosításokat Gao Xiang maga készítette és ellenőrizte, míg a Huawei szakértője, Hongbo Li is átnézte és jóváhagyta változtatásokat.