Plástrar kynntir til að slemba Linux kjarnastafla vistföng fyrir kerfissímtöl

Kees Cook, fyrrverandi yfirkerfisstjóri kernel.org og leiðtogi Ubuntu öryggisteymisins, sem starfar nú hjá Google við að tryggja Android og ChromeOS, birti sett af plástrum til að slembivala frávikum í kjarnastaflanum þegar unnið er úr kerfissímtölum. Plástrar bæta kjarnaöryggi með því að breyta stafla staðsetningu, sem gerir árásir á stafla mun erfiðari og árangurslausari. Upphafleg útfærsla styður ARM64 og x86/x86_64 örgjörva.

Upprunalega hugmyndin að plástrinum tilheyrir PaX RANDKSTACK verkefninu. Árið 2019 reyndi Elena Reshetova, verkfræðingur frá Intel, að búa til útfærslu á þessari hugmynd sem hentaði til að vera með í aðal Linux kjarnanum. Síðar var frumkvæðið tekið upp af Kees Cook sem kynnti útfærslu sem hentaði aðalútgáfu kjarnans. Stefnt er að því að plástrarnir verði með sem hluti af 5.13 útgáfunni. Sjálfgefið verður slökkt á stillingunni. Til að virkja það, eru kjarnaskipanalínufæribreytan „randomize_kstack_offset=on/off“ og CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT stillingin lögð til. Kostnaður við að virkja haminn er áætlaður um það bil 1% tap á afköstum.

Kjarninn í fyrirhugaðri vernd er að velja tilviljanakenndan staflajöfnun fyrir hvert kerfiskall, sem gerir það erfitt að ákvarða staflaskipulagið í minni, jafnvel eftir að hafa fengið heimilisfangsgögn, þar sem næsta kerfiskall mun breyta grunnvistfangi staflasins. Ólíkt PaX RANDKSTACK útfærslunni, í plástunum sem lagt er til að verði teknir inn í kjarnann, er slembival ekki framkvæmt á upphafsstigi (cpu_current_top_of_stack), heldur eftir að pt_regs uppbyggingin hefur verið stillt, sem gerir það ómögulegt að nota ptrace byggðar aðferðir til að ákvarða slembivalið offset meðan á langvarandi kerfissímtali stendur.

Heimild: opennet.ru

Bæta við athugasemd