25 veikleikar í RTOS Zephyr, þar á meðal þeir sem eru nýttir í gegnum ICMP pakka

Vísindamenn frá NCC Group birt ókeypis niðurstöður verkefnaúttektar Zephyr, þróast rauntíma stýrikerfi (RTOS), sem miðar að því að útbúa tæki sem samræmast Internet of Things hugmyndinni (IoT, Internet of Things). Við úttektina kom það í ljós 25 veikleikar í Zephyr og 1 varnarleysi í MCUboot. Verið er að þróa Zephyr með þátttöku Intel fyrirtækja.

Alls greindust 6 veikleikar í netstaflanum, 4 í kjarnanum, 2 í stjórnskelinni, 5 í kerfissímtölum, 5 í USB undirkerfinu og 3 í vélbúnaðaruppfærslubúnaðinum. Tvö mál eru metin mikilvæg, tvö eru há, 9 í meðallagi, 9 eru lág og 4 eru til skoðunar. Mikilvæg vandamál hafa áhrif á IPv4 stafla og MQTT þáttara, hættuleg vandamál hafa áhrif á USB fjöldageymslu og USB DFU rekla. Þegar upplýsingarnar voru birtar höfðu lagfæringar aðeins verið útbúnar fyrir 15 af hættulegustu veikleikunum; vandamál sem leiða til neitunar á þjónustu eða tengd göllum í viðbótarkjarnavarnarkerfi eru enn óleiðrétt.

Í IPv4 stafla vettvangsins hefur verið greint frá veikleika sem hægt er að nýta fjarstýrt, sem leiðir til skemmda á minni þegar unnið er úr ICMP pakka breyttum á ákveðinn hátt. Annað alvarlegt vandamál fannst í MQTT samskiptaþáttaranum, sem stafar af skorti á réttri athugun á lengd haussviðslengdar og getur leitt til ytri keyrslu kóða. Minni alvarleg afneitun á þjónustuvandamálum er að finna í IPv6 staflanum og CoAP samskiptareglunum.

Hægt er að nýta önnur vandamál á staðnum til að valda afneitun á þjónustu eða keyra kóða á kjarnastigi. Flestir þessara veikleika tengjast skorti á réttri athugun á rökum fyrir kerfiskall, og geta leitt til þess að handahófskennd svæði í kjarnaminni sé skrifað í og ​​lesið úr. Vandamálin ná einnig til kerfissímtalsvinnslukóðans sjálfs - að hringja í neikvætt kerfissímtalsnúmer leiðir til yfirflæðis heiltölu. Kjarninn greindi einnig vandamál við innleiðingu ASLR verndar (slembivalssvæðis) og kerfi til að setja kanarímerki á stafla, sem gerir þessar aðferðir árangurslausar.

Mörg vandamál hafa áhrif á USB stafla og einstaka rekla. Til dæmis geta vandamál í USB-gagnageymslu valdið yfirflæði yfir biðminni og keyrt kóða á kjarnastigi þegar tækið er tengt við USB-hýsil sem er stjórnað af árásarmanninum. Varnarleysi í USB DFU, bílstjóri fyrir hleðslu á nýjum fastbúnaði í gegnum USB, gerir þér kleift að hlaða breyttri vélbúnaðarmynd í innra flass örstýringarinnar án þess að nota dulkóðun og framhjá öruggum ræsiham með sannprófun á íhlutum með stafrænni undirskrift. Að auki var opinn ræsiforritakóði rannsakaður MCUboot, þar sem einn góðkynja varnarleysi fannst,
sem getur leitt til yfirflæðis biðminni þegar SMP (Simple Management Protocol) samskiptareglur eru notaðar yfir UART.

Mundu að í Zephyr er aðeins eitt alþjóðlegt sameiginlegt sýndarvistfangarými (SASOS, Stýrikerfi fyrir stakt heimilisfang) fyrir alla ferla. Forritssérstakur kóði er sameinaður forritssértækum kjarna til að mynda einhæfan keyrslu sem hægt er að hlaða og keyra á tilteknum vélbúnaði. Öll kerfisauðlindir eru ákvörðuð við samantektartíma, sem dregur úr kóðastærð og eykur afköst. Kerfismyndin getur aðeins innihaldið þá kjarnaeiginleika sem þarf til að keyra forritið.

Það er athyglisvert að meðal helstu kosta Zephyr getið þróun með öryggi í huga. Samþykktað öll þróunarstig gangist undir lögboðin stig til að staðfesta öryggi kóðans: óljós prófun, kyrrstöðugreining, skarpskyggniprófun, kóðaendurskoðun, greining á innleiðingu bakdyra og ógnarlíkön.

Heimild: opennet.ru

Bæta við athugasemd