{"id":106979,"date":"2023-03-01T12:48:41","date_gmt":"2023-03-01T10:48:41","guid":{"rendered":"https:\/\/prohoster.info\/?p=106979"},"modified":"2023-03-01T13:43:17","modified_gmt":"2023-03-01T11:43:17","slug":"microsoft-otkryl-cheriot-apparatnoe-reshenie-dlya-povysheniya-bezopasnosti-koda-na-yazyke-si","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/news\/microsoft-otkryl-cheriot-apparatnoe-reshenie-dlya-povysheniya-bezopasnosti-koda-na-yazyke-si","title":{"rendered":"Microsoft har lanserat CHERIoT, en h\u00e5rdvarul\u00f6sning f\u00f6r att \u00f6ka s\u00e4kerheten i kod skriven i C.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Microsoft har \u00f6ppnat upp sina forskningsinsatser kopplade till projektet CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), som syftar till att blockera s\u00e4kerhetsproblem i befintlig kod skriven i spr\u00e5ken C och C++. CHERIoT erbjuder en l\u00f6sning som skyddar befintliga kodbaser i C\/C++ utan att de beh\u00f6ver omskrivas. Skyddet implementeras genom att anv\u00e4nda en modifierad kompilator som till\u00e4mpar ett specialiserat ut\u00f6kat processorinstruktionsset (ISA), vilket tillhandah\u00e5lls av processorn och p\u00e5 h\u00e5rdvaruniv\u00e5 sp\u00e5rar \u00e5tkomst till minnet, kontrollerar korrektheten av pekaroperationer och s\u00e4kerst\u00e4ller isoleringen av kodblock.      <\/p>\n<p>Projektet har skapats med tanke p\u00e5 att den l\u00e5gniv\u00e5karakt\u00e4r som C-spr\u00e5ket har ofta leder till minnesfel, vilket ger upphov till problem som buffert\u00f6verfl\u00f6de, \u00e5tkomst till redan frigjorda minnen, dereferensiering av pekare eller dubbelfrig\u00f6ring av minne. Erfarenheten visar att \u00e4ven stora f\u00f6retag som Google och Microsoft, som har en strikt f\u00f6r\u00e4ndringsgranskningspolicy och anv\u00e4nder moderna utvecklingsmetoder samt statiska analysverktyg, inte kan garantera att det inte uppst\u00e5r minnesfel (till exempel orsakas omkring 70% av s\u00e5rbarheterna i mjukvaruprodukterna fr\u00e5n Microsoft och Google av os\u00e4ker minneshantering).     <\/p>\n<p>Problemet kan l\u00f6sas genom att anv\u00e4nda programmeringsspr\u00e5k som garanterar s\u00e4ker minneshantering, eller genom att anv\u00e4nda wrappers med ytterligare kontroller, till exempel genom att anv\u00e4nda ist\u00e4llet f\u00f6r vanliga pekare av typen MiraclePtr (raw_ptr), som genomf\u00f6r ytterligare kontroller av \u00e5tkomst till frigjorda minnesomr\u00e5den. Men s\u00e5dana metoder passar b\u00e4ttre f\u00f6r ny kod, och det \u00e4r ganska problematiskt att omskriva redan existerande projekt i C\/C++, s\u00e4rskilt om de \u00e4r avsedda att k\u00f6ras i resursbegr\u00e4nsade milj\u00f6er, s\u00e5som inbyggda system och enheter i Internet of Things.      <\/p>\n<p>CHERIoT:s h\u00e5rdvarukomponenter \u00e4r utformade som en mikrokontroller baserad p\u00e5 RISC-V-arkitekturen, som implementerar den skyddade processorarkitekturen CHERI (Capability Hardware Extension to RISC-V). Denna arkitektur erbjuder en minnes\u00e5komstmodell baserad p\u00e5 \"capability\" (varje l\u00e4s- och skrivoperation till minnet auktoriseras). Den programvarumodell som bygger p\u00e5 den tillhandah\u00e5llna CHERIoT-instruktionsupps\u00e4ttningen (ISA) garanterar s\u00e4ker hantering av minne p\u00e5 niv\u00e5n f\u00f6r enskilda objekt, skyddar mot \u00e5tkomst till redan frigjort minne och implementerar ett l\u00e4ttvikts isoleringssystem f\u00f6r minnes\u00e5tkomst. Den angivna skyddande programvarumodellen \u00e5terspeglas direkt i spr\u00e5kmodellen C\/C++, vilket g\u00f6r det m\u00f6jligt att anv\u00e4nda den f\u00f6r att skydda befintliga applikationer (endast recompilering och k\u00f6rning p\u00e5 h\u00e5rdvara som st\u00f6der CHERIoT ISA kr\u00e4vs).    <\/p>\n<p>Den f\u00f6reslagna l\u00f6sningen m\u00f6jligg\u00f6r blockering av fel som orsakar gr\u00e4ns\u00f6verskridande \u00e5tkomst i minnet, f\u00f6rhindrar pekarbyte (alla pekare m\u00e5ste h\u00e4rstamma fr\u00e5n redan existerande pekare), sp\u00e5rar \u00e5tkomst till minne efter frig\u00f6ring (all \u00e5tkomst till minne via en ogiltig pekare eller en pekare som refererar till ett frigjort objekt leder till ett undantag). Till exempel m\u00f6jligg\u00f6r anv\u00e4ndningen av CHERIoT automatiskt gr\u00e4nskontroll, sp\u00e5rning av livsl\u00e4ngden f\u00f6r minnesomr\u00e5den och s\u00e4kerst\u00e4llande av pekarintegritet i komponenter som hanterar otillf\u00f6rlitliga data utan att g\u00f6ra \u00e4ndringar i koden.      <\/p>\n<p>Projektet omfattar specifikationen av den utvidgade CHERIoT instruktionupps\u00e4ttningen, en referensimplementation av en 32-bitars RISC-V CPU med st\u00f6d f\u00f6r CHERIoT ISA och ett modifierat LLVM-verktyg. Prototypens CPU-schema och beskrivningar av h\u00e5rdvarublock p\u00e5 Verilog-spr\u00e5ket distribueras under Apache 2.0-licensen. CPU:n \u00e4r baserad p\u00e5 Ibex-k\u00e4rnan fr\u00e5n lowRISC-projektet. CHERIoT ISA kodmodellen \u00e4r definierad i Sail-spr\u00e5ket och distribueras under BSD-licensen.                <\/p>\n<p>Dessutom har prototypen f\u00f6r det realtidsoperativsystemet CHERIoT RTOS f\u00f6reslagits, vilket m\u00f6jligg\u00f6r isolering av kompartments \u00e4ven p\u00e5 inbyggda system med 256 MB RAM. Koden f\u00f6r CHERIoT RTOS \u00e4r skriven i C++ och distribueras under MIT-licensen. De grundl\u00e4ggande komponenterna i operativsystemet, s\u00e5som bootloader, schemal\u00e4ggare och minneshanteringssystem, \u00e4r formade som kompartments.     <\/p>\n<p>Ett kompartments i CHERIoT RTOS \u00e4r en isolerad kombination av kod och globala variabler som liknar ett delat bibliotek, men till skillnad fr\u00e5n det kan den \u00e4ndra sitt tillst\u00e5nd (mutable) och k\u00f6ras i en separat s\u00e4kerhetskontext. Ingen extern kod kan \u00f6verf\u00f6ra kontroll till koden i kompartments eller f\u00e5 tillg\u00e5ng till objekt, f\u00f6rutom genom specifikt definierade ing\u00e5ngspunkter och anv\u00e4ndning av pekare till objekt som uttryckligen \u00f6verf\u00f6rts vid anrop av ett annat kompartments. Integritet och konfidentialitet garanteras f\u00f6r kod och globala objekt i kompartments.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58726\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), \u043d\u0430\u0446\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u043c \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 C \u0438 \u0421++. CHERIoT \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0435 \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u0434\u043e\u0432\u044b\u0435 \u0431\u0430\u0437\u044b \u043d\u0430 \u0421\/C++ \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0445 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u0430\u0449\u0438\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-106979","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), \u043d\u0430\u0446\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u043c \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 C.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/news\/microsoft-otkryl-cheriot-apparatnoe-reshenie-dlya-povysheniya-bezopasnosti-koda-na-yazyke-si\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Microsoft \u043e\u0442\u043a\u0440\u044b\u043b CHERIoT, \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0434\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), \u043d\u0430\u0446\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u043c \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 C.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/news\/microsoft-otkryl-cheriot-apparatnoe-reshenie-dlya-povysheniya-bezopasnosti-koda-na-yazyke-si\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-03-01T10:48:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-03-01T11:43:17+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Microsoft har lanserat CHERIoT, en h\u00e5rdvarul\u00f6sning f\u00f6r att f\u00f6rb\u00e4ttra s\u00e4kerheten i C-kod | ProHoster","description":"Microsoft har \u00f6ppnat sina arbeten relaterade till projektet CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), som syftar till att l\u00f6sa s\u00e4kerhetsproblem i befintlig kod skriven i C.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/microsoft-otkryl-cheriot-apparatnoe-reshenie-dlya-povysheniya-bezopasnosti-koda-na-yazyke-si","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Microsoft \u043e\u0442\u043a\u0440\u044b\u043b CHERIoT, \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0434\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c CHERIoT (Capability Hardware Extension to RISC-V for Internet of Things), \u043d\u0430\u0446\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c\u044e \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u043c \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 C.","og:url":"https:\/\/prohoster.info\/sv\/blog\/news\/microsoft-otkryl-cheriot-apparatnoe-reshenie-dlya-povysheniya-bezopasnosti-koda-na-yazyke-si","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-03-01T10:48:41+00:00","article:modified_time":"2023-03-01T11:43:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/106979","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=106979"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/106979\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=106979"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=106979"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=106979"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}