Wasmtime дахь ноцтой эмзэг байдал, WebAssembly програмуудын ажиллах хугацаа

Wasmtime 6.0.1, 5.0.1 болон 4.0.1-ийн залруулах шинэчлэлтүүд нь аюулын эгзэгтэй түвшинд тогтоогдсон эмзэг байдлыг (CVE-2023-26489) зассан. Энэ эмзэг байдал нь тусгаарлагдсан WebAssembly кодын зөвшөөрөгдсөн хязгаараас гадуур санах ойн хэсэгт өгөгдлийг бичих боломжийг олгодог бөгөөд үүнийг халдагчид тусгаарлагдсан WASI орчноос гадуур өөрийн кодыг ажиллуулахад ашиглаж болно.

Wasmtime нь WASI (WebAssembly System Interface) өргөтгөл бүхий WebAssembly програмуудыг ердийн бие даасан програм болгон ажиллуулахад зориулагдсан ажиллах цаг юм. Хэрэгслийн хэрэгсэл нь Rust хэл дээр бичигдсэн бөгөөд Cranelift кодын үүсгэгч дэх шугаман санах ойн хаяглалтын дүрмийг тодорхойлох логик алдаанаас болж эмзэг байдал үүсдэг бөгөөд энэ нь техник хангамжийн архитектураас үл хамааран завсрын дүрслэлийг x86_64 архитектурт гүйцэтгэх боломжтой машины код болгон хөрвүүлдэг.

Тодруулбал, WebAssembly програмын хувьд WebAssembly-д зөвшөөрөгдсөн 35 битийн хаягийн оронд 33 битийн үр дүнтэй хаягуудыг тооцоолсон бөгөөд энэ нь унших, бичих үйлдлүүдийг зөвшөөрдөг виртуал санах ойн хязгаарыг 34 ГБ болгон өөрчилсөн бол хамгаалагдсан хязгаарлагдмал орчны орчны тохиргоо нь Үндсэн хаягаас 6 ГБ. Үүний үр дүнд үндсэн хаягаас 6-аас 34 ГБ хүртэлх виртуал санах ойг WebAssembly програмаас унших, бичих боломжтой болсон. Энэ санах ой нь бусад WebAssembly орчин эсвэл WebAssembly ажиллах үеийн бүрэлдэхүүн хэсгүүдийг байрлуулах боломжтой.

Хэрэв Wasmtime хувилбарыг шинэчлэх боломжгүй бол алдааг хаахын тулд "Config::static_memory_maximum_size(0)" сонголтыг зааж өгч, бүх шугаман санах ойн хандалтуудыг тусад нь шалгах боломжтой (үр дүнд нь их хэмжээний гүйцэтгэлийн торгууль үүснэ) . Өөр нэг сонголт бол "Config::static_memory_guard_size(1 <36)" тохиргоог ашиглан асуудалтай виртуал санах ойн мужид хуваарилагдсан Хамгаалалтын хуудасны тоог нэмэгдүүлэх (үр дүнд нь их хэмжээний виртуал санах ойг нөөцлөх, WebAssembly програмуудыг нэгэн зэрэг ажиллуулж байгаа тоог хязгаарлах) юм. ).

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх