AMD нь TSA (Transient Scheduler Attack) гэж нэрлэгддэг процессорууд дээрээ микроархитектурын халдлагын шинэ ангиллыг нээлээ. Энэхүү халдлага нь халдагчид CPU-ийн тусгаарлах механизмыг алгасаж, цөмийн түвшинд боловсруулсан мэдээллийг тодорхойлохын тулд хэрэглэгчийн орон зайнаас эсвэл өөр зочинд ашигласан өгөгдлийг мэдэхийн тулд зочин гэх мэт бусад нөхцөлд боловсруулсан өгөгдлийг тодорхойлох боломжийг олгодог.
Цөм, виртуал машин, процесс гэх мэт өөр өөр хамгаалалтын бүсүүдийн хоорондох бичил архитектурын тусгаарлалтыг шалгах зорилгоор Майкрософт болон ETH Цюрихийн судлаачдын бүтээсэн багаж хэрэгслийг боловсруулах явцад энэхүү эмзэг байдлыг илрүүлсэн.
Довтолгооны арга нь бичил архитектурын бүтцийн төлөв байдлаас зарим зааврын гүйцэтгэлийн хугацаанаас хамаарна. Процессор санах ойноос өгөгдлийг унших зааврыг хурдан дуусгахыг хүлээж байгаа (жишээлбэл, өгөгдөл L1 кэшэд байгаа гэж үзвэл) боловч өгөгдлийг амжилттай авч чадахгүй бол зааврын "хуурамч бөглөх" төлөв үүснэ. Энэ тохиолдолд, энэ төлөвийг тодорхойлохоос өмнө процессор нь санах ойноос ачаалах зааврыг гүйцэтгэх үр дүнгээс хамаарах бусад үйлдлүүдийн таамаглалыг төлөвлөх боломжтой.
Ачаалал дуусаагүй тул үүнтэй холбоотой өгөгдлийг процессор хүчингүй болгож, дараа нь ачаалах ажиллагаа давтагдана. Зөв өгөгдөл бэлэн болсон үед хамааралтай үйлдлүүд мөн дахин хийгддэг. Гэсэн хэдий ч, "хуурамч дуусгах" нөхцөлийг зассан зааварчилгааг гүйцэтгэсний дараа дамжуулах хоолойг угаах нь хийгдээгүй бөгөөд буруу өгөгдлийг хамааралтай үйлдлүүд рүү шилжүүлж болно.
Ийм үйлдлийг гүйцэтгэх нь кэш болон TLB (Translation Lookaside Buffer) төлөвийг өөрчлөхгүй, өөрөөр хэлбэл кэшийн төлөвийг тодорхойлох уламжлалт аргуудыг ашиглан өгөгдлийг сэргээх боломжгүй юм. Гэхдээ энэ өгөгдөл нь бусад зааврын гүйцэтгэлд нөлөөлдөг. Гүйцэтгэлийн хугацааны шинжилгээг бусад үйлдлүүдийн таамаглалаар гүйцэтгэсний дараа үлдсэн бичил архитектурын бүтцээс мэдээлэл алдагдах эх үүсвэр болгон ашиглаж болно.
Үлдэгдэл мэдээлэл олборлох эх үүсвэрээс хамааран хоёр эмзэг байдлыг тодорхойлно.
- CVE-2024-36350 (TSA-SQ — TSA Store Queue) — санах ойд заавар бичих үр дүнг тодорхойлох боломжийг олгодог бичих үйлдлүүдийн түр хадгалах буфер (Дэлгүүрийн дараалал) алдагдсан.
- CVE-2024-36357 (TSA-L1 — TSA L1 өгөгдлийн кэш) — L1D кэшээр дамжин алдагдсан.
Эмзэг талууд нь Zen 19 болон Zen 3 бичил архитектурт суурилсан AMD процессорын гэр бүлд (Fam4h) гарч ирдэг. Жишээ нь, асуудал AMD Ryzen 5000/6000/7000/8000, AMD EPYC Milan/Milan-X/Genoa/Genoa-X/Bergamo/Siena, AMD Instinct MI300A, AMD Ryzen Threadripper PRO, AMDC Embc YEP 7000ed-д байна. 7003/8004/9004/97X4, AMD Ryzen Embedded 5000/7000/V3000 CPU цуврал.
Эмзэг байдлыг хаахад шаардлагатай өөрчлөлтүүдийг 12-р сард OEM үйлдвэрлэгчдэд гаргасан микрокодын шинэчлэлт болон Platform Initialization (PI) програм хангамжид оруулсан болно. Эмзэг байдлаас хамгаалах нөхөөсүүдийг цөмд оруулахаар илгээсэн. Linux (Гүйцэтгэлд сөргөөр нөлөөлдөг хамгаалалтыг идэвхгүй болгохын тулд цөмийн команд мөрийн "tsa=off" сонголтыг өгсөн.) Xen гипервизорт засвар нэмэгдсэн. Эмзэг байдлыг хаахын тулд микрокодын шинэчлэлт болон цөм эсвэл гипервизорын түвшинд хамгаалалтын горимыг идэвхжүүлэх шаардлагатай.
Эх сурвалж: opennet.ru
