25 vilnerabilite nan RTOS Zephyr, ki gen ladan sa yo eksplwate atravè yon pake ICMP

Chèchè nan gwoup NCC pibliye rezilta odit pwojè gratis Zefir, devlope yon sistèm operasyon an tan reyèl (RTOS), ki vize pou ekipe aparèy ki konfòme yo ak konsèp Entènèt bagay (IoT, Entènèt bagay). Pandan odit la li te revele 25 vilnerabilite nan Zephyr ak 1 vilnerabilite nan MCUboot. Zephyr ap devlope ak patisipasyon konpayi Intel yo.

An total, 6 vilnerabilite yo te idantifye nan chemine rezo a, 4 nan nwayo a, 2 nan koki kòmand la, 5 nan moun kap okipe apèl sistèm, 5 nan subsistèm USB a ak 3 nan mekanis aktyalizasyon firmwèr la. De pwoblèm yo konsidere kòm kritik, de yo wo, 9 yo modere, 9 yo ba, ak 4 yo se pou konsiderasyon. Pwoblèm kritik afekte pile IPv4 la ak analizeur MQTT la, sa ki danjere afekte depo mas USB ak chofè USB DFU. Nan moman divilgasyon enfòmasyon yo, yo te prepare kòreksyon sèlman pou 15 pwoblèm ki pi danjere ki mennen nan refi sèvis oswa ki asosye ak defo nan mekanis pwoteksyon nwayo adisyonèl yo rete san korije.

Yo te idantifye yon vilnerabilite adistans eksplwatasyon nan pil IPv4 platfòm la, ki mennen nan koripsyon memwa lè yo trete pake ICMP modifye nan yon sèten fason. Yo te jwenn yon lòt pwoblèm grav nan analizè pwotokòl MQTT, ki te koze pa yon mank de bon chèk longè jaden header epi ki ka mennen nan ekzekisyon kòd aleka. Gen mwens pwoblèm refi sèvis yo jwenn nan pil IPv6 ak aplikasyon pwotokòl CoAP la.

Lòt pwoblèm yo ka eksplwate lokalman pou lakòz yon refi sèvis oswa egzekite kòd nan nivo nwayo a. Pifò nan frajilite sa yo gen rapò ak mank de chèk apwopriye nan agiman apèl sistèm, epi yo ka mennen nan zòn abitrè nan memwa nwayo yo te ekri ak li nan. Pwoblèm yo tou pwolonje nan kòd pwosesis apèl sistèm nan tèt li-rele yon nimewo apèl sistèm negatif rezilta nan yon debòde nonb antye relatif. Kernel la te idantifye tou pwoblèm nan aplikasyon pwoteksyon ASLR (randomization espas adrès) ak mekanis pou mete mak Canary sou pil la, ki fè mekanis sa yo pa efikas.

Anpil pwoblèm afekte pile USB ak chofè endividyèl yo. Pou egzanp, pwoblèm nan depo mas USB ka lakòz yon debòde tanpon ak egzekite kòd nan nivo nwayo a lè aparèy la konekte ak yon lame USB kontwole pa atakè a. Yon vilnerabilite nan USB DFU, yon chofè pou chaje nouvo firmwèr atravè USB, pèmèt ou chaje yon imaj firmwèr modifye nan Flash entèn nan mikrokontwolè a san yo pa itilize chifreman ak kontoune mòd nan bòt ki an sekirite ak verifikasyon nan eleman lè l sèvi avèk yon siyati dijital. Anplis de sa, yo te etidye kòd bootloader louvri MCUboot, kote yo te jwenn yon vilnerabilite benign,
ki ka mennen nan yon debòde tanpon lè w ap itilize pwotokòl SMP (Simple Management Protocol) sou UART la.

Sonje byen, nan Zephyr, se sèlman yon sèl espas adrès vityèl pataje mondyal (SASOS, Single Address Space Operating System) yo bay pou tout pwosesis. Kòd aplikasyon espesifik yo konbine avèk yon nwayo aplikasyon espesifik pou fòme yon ègzèkutabl monolitik ki ka chaje epi kouri sou pyès ki nan konpitè espesifik. Tout resous sistèm yo detèmine nan tan konpile, diminye gwosè kòd ak ogmante pèfòmans. Imaj sistèm lan ka gen ladan sèlman karakteristik nwayo sa yo ki oblije kouri aplikasyon an.

Se enpòtan pou remake ke nan mitan avantaj ki genyen nan kle nan Zephyr mansyone devlopman ak sekirite nan tèt ou. Apwouveke tout etap nan devlopman sibi etap obligatwa nan konfime sekirite kòd la: tès fuzzing, analiz estatik, tès pénétration, revizyon kòd, analiz de aplikasyon backdoor ak modèl menas.

Sous: opennet.ru

Add nouvo kòmantè