CVE-2026-90648
Təsvir
WebAssembly wabt-dakı wasm2c 1.0.41 versiyasına qədər olan versiyalarda, əsasən 32-bit platformaları əhatə edən bəzi hallarda "table flip" hücumu kimi tanınan sandbox-dan çıxma (sandbox escape) imkanı mövcuddur. Proqram wasm_rt_allocate_funcref_table() funksiyasında (wasm2c/wasm-rt-impl-tableops.inc) calloc() funksiyasının geri dönüş dəyərini yoxlamır. Funcref cədvəlinin ayrılması uğursuz olduqda, table->size qonaq tərəfindən təyin edilmiş element sayını saxlayarkən, table->data NULL olaraq qalır; beləliklə, sərhəd yoxlamaları hələ də keçərli sayılır və cədvəl elementlərinin girişləri mütləq yaddaş ünvanlarına (i * sizeof(wasm_rt_funcref_t)) yönəlir. Bu, host prosesinin yaddaşına istənilən məlumatın oxunmasına və yazılmasına, həmçinin table.get, table.set və call_indirect vasitəsilə istənilən kodun icrasına şərait yaradaraq, wasm2c-nin təmin etdiyi izolyasiyanı pozur (tam sandbox-dan çıxma). wasm2c, RLBox və WasmBoxC tərəfindən proses daxili sandbox sərhədi kimi istifadə olunur, o cümlədən Firefox-da etibarsız şrift, media və XML girişlərini məhdudlaşdırmaq üçün Graphite, Hunspell, Ogg, Expat və Woff2 kitabxanalarını wasm2c vasitəsilə kompilyasiya edir. Buna görə də, bu tətbiqlərdəki sandbox mexanizmi potensial olaraq təsirə məruz qala bilər. İstismar üçün funcref cədvəlinin ayrılmasının uğursuz olması lazımdır, məsələn, 32-bit hostlarda ünvan sahəsi limiti (RLIMIT_AS) altında, vm.overcommit_memory=2 olduğu halda və ya yaddaş çatışmazlığı zamanı. Defolt overcommit ilə 64-bit Linux sistemlərində ayırma uğurlu olur və qüsur tetiklənmir. Eyni runtime-da wasm2c yaddaş ayırıcısı calloc uğursuz olduqda işi dayandırır (abort); lakin cədvəl ayırıcısında bu davranış yoxdur. Bu problem ab9e0b55 komiti (PR #813) ilə daxil edilmişdir.
Necə düzəltmək olar
Mənbələrdə bu zəiflik üçün düzəldilmiş versiya və ya yamaq keçidi yoxdur.
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| WebAssembly wabt | v ≤ 1.0.41 | — |
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.
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.