CHERIoT, Microsoftin projekti C:n turvallisuuden parantamiseksi

CHERIOT

CHERIoT, MS-vaihtoehto sulautettujen järjestelmien suojaukseen

Uutiset paljastivat sen äskettäin Microsoft on avannut CHERIoT-projektiin liittyvät kehitystyöt (Laajennus RISC-V:hen esineiden Internetiin) tarkoitettu estämään tietoturvaongelmat C- ja C++-koodissa nykyinen. CHERIoT tarjoaa ratkaisun olemassa olevien C/C++-koodikantojen suojaamiseen ilman, että niitä tarvitsee muuttaa.

Suojaus toteutetaan modifioidulla kääntäjällä joka käyttää prosessorin tarjoamaa erityistä laajennettua prosessorin käskysarjaa (ISA) ja valvoo muistin käyttöä laitteistotasolla, varmistaa työn oikeellisuuden osoittimilla ja tarjoaa koodilohkon eristyksen.

Tietoja CHERIOTista

El proyecto luotiin ymmärtäen, että C-kielen matalan tason luonne tulee muistivirheiden lähde, mikä johtaa ongelmiin, kuten puskurin ylivuoto, pääsy jo vapautettuun muistiin, osoittimen viittauksen poisto tai kaksoisvapautus.

Käytäntö osoittaa, että edes suuret yritykset, kuten Google ja Microsoft, joilla on tiukka muutostarkistuspolitiikka ja jotka käyttävät nykyaikaisia ​​kehitysmenetelmiä ja staattisia analyysityökaluja, eivät voi taata virheettömän muistin käyttöä (esim. noin 70 % Microsoftin ja Googlen haavoittuvuuksista johtuu epävarmasta muistinhallinnasta).

Ongelma Se voidaan ratkaista käyttämällä ohjelmointikieliä, jotka takaavat turvallisen työn.tai muistilla tai linkeillä lisäohjaimilla, esimerkiksi käyttämällä MiraclePtr:ää (raw_ptr) yleisten osoittimien sijasta, mikä suorittaa lisäohjaimia päästäkseen vapautettuihin muistialueisiin.

Mutta Tällaiset menetelmät sopivat paremmin uudelle koodille y on melko hankalaa muokata olemassa olevia C/C++-projekteja, varsinkin jos ne on tarkoitettu toimimaan resurssirajoitteisissa ympäristöissä, kuten sulautetuissa järjestelmissä ja IoT-laitteissa.

Los CHERIoT-laitteistokomponentit on suunniteltu mikrokontrolleriksi perustuu RISC-V-arkkitehtuuriin ja toteuttaa suojatun prosessoriarkkitehtuurin CHERI (Capacity Hardware Extension for RISC-V), joka tarjoaa ohjatun muistin käyttömallin.

Perustuu käskyjoukon arkkitehtuuri (ON) CHERIoT:ssä on rakennettu ohjelmointimalli, joka takaa muistin kanssa työskentelyn turvallisuuden yksittäisten objektien tasolla, suojaa jo vapautuneeseen muistiin pääsyltä ja toteuttaa kevyen eristysjärjestelmän muistin käyttöä varten.

Tämä ohjelmallinen suojausmalli heijastaa suoraan C/C++-kielimallia, jolloin sitä voidaan käyttää olemassa olevien sovellusten suojaamiseen (vain uudelleenkääntäminen ja käyttö ISA CHERIoT -yhteensopivalla laitteistolla vaaditaan).

Ehdotettu ratkaisu mahdollistaa virheet, jotka aiheuttavat muistissa olevan objektin rajojen ulkopuolella, eston, ei salli osoittimien korvaamista (kaikki osoittimet on luotava olemassa olevista osoittimista), valvoo muistin käyttöä vapauttamisen jälkeen (huono osoittimen tai vapautettuun objektiin viittaavan osoittimen muistin käyttö aiheuttaa poikkeuksen).

Esimerkiksi CHERIoT:n avulla voidaan ilman koodimuutoksia tehdä automaattinen rajojen tarkistus, seurata muistialueiden käyttöikää ja varmistaa osoittimien eheys epäluotettavia tietoja käsittelevissä komponenteissa.

El proyecto sisältää CERIoT-käskysarjaarkkitehtuurin määrittelyn laajennus, ISA CHERIoT -yhteensopivan 32-bittisen RISC-V-suorittimen referenssitoteutus ja muokattu LLVM-työkalusarja.

Vihdoin Jos haluat tietää enemmän siitä, sinun pitäisi tietää, että prototyyppikaaviot Verilogin suorittimen ja laitteistolohkojen kuvaukset jaetaan Apache 2.0 -lisenssillä. LowRISC-projektin Ibex-ydintä käytetään CPU:n perustana ja CHERIoT ISA -koodimalli määritellään Sail-kielellä ja jaetaan BSD-lisenssillä.

Lisäksi ehdotetaan prototyyppiä CHERIoT RTOS reaaliaikainen käyttöjärjestelmä, joka tarjoaa mahdollisuuden eristää osastoja (osasto) jopa sulautetuissa järjestelmissä, joissa on 256 Mt RAM-muistia.

Koodi CHERIOT RTOS Se on kirjoitettu C++-kielellä ja sitä jaetaan MIT-lisenssillä. Osastojen muodossa suunnitellaan käyttöjärjestelmän peruskomponentit, kuten käynnistyslatain, ajastin ja muistin varausjärjestelmä.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.