CVE-2026-79976

Yüksək

Təsvir

subsys/pmci/mctp/mctp_i2c_gpio_target.c faylındakı MCTP-over-I2C+GPIO hədəf bağlaması kiçik bir psevdo-registrlər faylını emulyasiya edir, burada şin kontrolleri əvvəlcə registr nömrəsini yazır və sonra yük baytlarını yazır və ya oxuyur. Kontroller I2C STOP göndərdikdə seçilmiş registr (b->reg_addr) və məlumat fazasının bayrağı (b->rxtx) heç vaxt təmizlənmirdi, buna görə də tamamlanmış ötürmədən sonra hədəfdə hələ də bir məlumat registri seçili qalırdı, halbuki həmin registrin istinad etdiyi paket buferi artıq mctp_i2c_gpio_target_stop() tərəfindən istehlak edilmiş və NULL olaraq təyin edilmişdi. Şindəki kontroller iki adi tranzaksiya vasitəsilə və autentifikasiyasız, NULL buferi ilə mctp_i2c_gpio_target_stop()-un eyni budağına yenidən daxil ola bilər: əvvəlcə MCTP_I2C_GPIO_RX_MSG_ADDR ünvanına normal paket yazılması və ardınca STOP (hansı ki, b->rx_pkt-ni çatdırır və azad edir), sonra isə sadə oxuma tranzaksiyası və ardınca STOP. Uğursuz read_requested() çağırışı köhnəlmiş vəziyyəti dəyişdirilmədən saxlayır və I2C drayveri hələ də STOP geri çağırma funksiyasını (callback) çatdırır, bu isə daha sonra NULL paket ilə mctp_bus_rx()-i çağırır. Simmetrik hal ötürmə tərəfində də mövcuddur, burada köhnəlmiş MCTP_I2C_GPIO_TX_MSG_ADDR seçimi b->tx_pkt təmizləndikdən sonra b->tx_pkt->end-ə istinad edir və əlavə olaraq b->tx_complete-ni ikinci dəfə siqnallaşdırır ki, bu da növbəti çıxan paketin itirilməsinə səbəb olur. İstinad I2C hədəf kəsmə idarəedicisində baş verir, buna görə də 0 ünvanına girişləri bloklayan hər hansı hədəfdə nəticə kritik istisna və cihazın sıfırlanması və ya dayanmasıdır — bu, ortaq idarəetmə şinində kontroller kimi çıxış edə bilən hər hansı cihaz (məsələn, peer MCTP son nöqtəsində və ya BMC-də kompromisə uğramış proqram təminatı) tərəfindən törədilən xidmətdən imtinadır. 0 ünvanının oxuna bildiyi hissələrdə təsir, MCTP stekinə yanlış formalaşdırılmış paket buferinin ötürülməsi və itirilmiş ötürmə paketləri ilə məhdudlaşır. Hücumçu tərəfindən idarə olunan heç bir dəyər yazılmır və konfidensiallıq və ya bütövlük sərhədləri pozulmur. Düzəliş hər STOP zamanı b->reg_addr-ni MCTP_I2C_GPIO_INVALID_ADDR olaraq sıfırlayır və b->rxtx-i təmizləyir, beləliklə, hər hansı məlumat fazası yenidən işləməzdən əvvəl yeni registr seçilməlidir. Yalnız eksperimental CONFIG_MCTP alt sistemi ilə CONFIG_MCTP_I2C_GPIO_TARGET=y seçimləri olan versiyalar təsirlənir.

CiddilikYüksək
CVSS7.1
İstismar ehtimalı—
MəhsulZephyr
Dərc21 okt 2026
İlk görülmə21 okt 2026

Necə düzəltmək olar

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
zephyrproject zephyr4.3.0 ≤ v ≤ 4.4.2—

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.

CVE-2026-79976 · Zephyr · Dark Radar