Google opið öruggt stýrikerfi KataOS

Google hefur tilkynnt uppgötvun á þróun sem tengist KataOS verkefninu, sem miðar að því að búa til öruggt stýrikerfi fyrir innbyggðan vélbúnað. KataOS kerfishlutar eru skrifaðir í Rust og keyrðir ofan á seL4 örkjarnanum, sem stærðfræðileg sönnun um áreiðanleika hefur verið veitt fyrir á RISC-V kerfum, sem gefur til kynna að kóðinn uppfylli að fullu forskriftirnar sem tilgreindar eru á formlegu tungumáli. Verkefniskóðinn er opinn undir Apache 2.0 leyfinu.

Kerfið veitir stuðning fyrir palla sem byggjast á RISC-V og ARM64 arkitektúr. Til að líkja eftir rekstri seL4 og KataOS umhverfisins ofan á vélbúnaðinn er Renode rammainn notaður í þróunarferlinu. Sem viðmiðunarútfærsla er lagt til Sparrow hugbúnaðar- og vélbúnaðarsamstæðan, sem sameinar KataOS með öruggum flísum sem byggjast á OpenTitan pallinum. Fyrirhuguð lausn gerir þér kleift að sameina rökrétt staðfestan stýrikerfiskjarna með áreiðanlegum vélbúnaðarhlutum (RoT, Root of Trust), smíðaðir með OpenTitan pallinum og RISC-V arkitektúr. Til viðbótar við KataOS kóðann er fyrirhugað að opna alla aðra Sparrow íhluti, þar á meðal vélbúnaðarhlutann, í framtíðinni.

Verið er að þróa vettvanginn með auga til notkunar í sérhæfðum flögum sem eru hannaðar til að keyra forrit fyrir vélanám og vinnslu trúnaðarupplýsinga, sem krefjast sérstakrar verndar og staðfestingar á fjarveru bilana. Dæmi um slík forrit eru kerfi sem vinna með myndir af fólki og raddupptökur. Notkun KataOS á áreiðanleikastaðfestingu tryggir að ef einn hluti kerfisins bilar mun bilunin ekki breiðast út í restina af kerfinu og sérstaklega til kjarnans og mikilvægra hluta.

SeL4 arkitektúrinn er áberandi fyrir hreyfanlega hluta til að stjórna kjarnaauðlindum inn í notendarými og nota sömu aðgangsstýringartæki fyrir slík auðlind og fyrir notendaauðlindir. Örkjarninn býður ekki upp á tilbúnar útdrætti á háu stigi til að stjórna skrám, ferlum, nettengingum og þess háttar; í staðinn býður hann aðeins upp á lágmarksaðferðir til að stjórna aðgangi að líkamlegu heimilisfangarými, truflunum og örgjörvaauðlindum. Útdrættir á háu stigi og rekla fyrir samskipti við vélbúnað eru útfærð sérstaklega ofan á örkjarnanum í formi verkefna á notendastigi. Aðgangur slíkra verkefna að þeim auðlindum sem örkjarnan hefur tiltækt er skipulagður með skilgreiningu reglna.

Til frekari verndar eru allir íhlutir nema örkjarninn þróaðir innfæddir í Rust með því að nota örugga forritunartækni sem lágmarkar minnisvillur sem leiða til vandamála eins og minnisaðgang eftir losun, núllbendistilvísanir og biðminni yfirkeyrslu. Í Rust var skrifað forritahleðslutæki í seL4 umhverfinu, kerfisþjónusta, ramma fyrir þróun forrita, API til að fá aðgang að kerfissímtölum, vinnslustjóri, vélbúnaður fyrir kraftmikla minnisúthlutun o.fl. Staðfesta samsetningin notar CAmkES verkfærakistuna, þróað af seL4 verkefninu. Einnig er hægt að búa til íhluti fyrir CAmkES í Rust.

Ryð framfylgir minnisöryggi við samantektartíma með tilvísunarathugun, eignarhaldi á hlutum og mælingar á líftíma hluta (umfang) og með því að meta réttmæti minnisaðgangs á keyrslutíma. Ryð veitir einnig vernd gegn heiltöluflæði, krefst þess að breytileg gildi séu frumstillt fyrir notkun, notar sjálfgefið hugmyndina um óbreytanlegar tilvísanir og breytur og býður upp á sterka truflanir innsláttar til að lágmarka rökvillur.

Heimild: opennet.ru

Bæta við athugasemd