Атаката TSA, Π²ΠΎΠ΄Π΅Ρ‰Π° Π΄ΠΎ ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° информация ΠΎΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ структури Π½Π° CPU AMD.

Компания AMD Ρ€Π°Π·ΠΊΡ€ΠΈ информация Π·Π° Π½ΠΎΠ² клас ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ Π°Ρ‚Π°ΠΊΠΈ Π²ΡŠΡ€Ρ…Ρƒ своитС процСсори β€” TSA (Transient Scheduler Attack). Атаката позволява Π½Π° Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π΄Π° Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈΡ‚Π΅ Π·Π° изолация Π½Π° CPU ΠΈ Π΄Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈ контСксти, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ‚ потрСбитСлското пространство Π΄Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ информация, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π° Π½Π° Π½ΠΈΠ²ΠΎ ядро, ΠΈΠ»ΠΈ ΠΎΡ‚ гостуваща систСма Π΄Π° Π½Π°ΡƒΡ‡ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² Π΄Ρ€ΡƒΠ³Π° гостуваща систСма.

УязвимоститС бяха установСни Π² Ρ…ΠΎΠ΄Π° Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° инструмСнти, създадСни ΠΎΡ‚ изслСдоватСли ΠΎΡ‚ Microsoft ΠΈ ШвСйцарската висша тСхничСска школа Π² Π¦ΡŽΡ€ΠΈΡ… Π·Π° стрСс тСстиранС Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Π°Ρ‚Π° изолация ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π·ΠΎΠ½ΠΈ Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏ, ΠΊΠ°Ρ‚ΠΎ ядро, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΠΈ процСси.

ΠœΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π½Π° Π°Ρ‚Π°ΠΊΠ° сС основава Π½Π° зависимостта Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° някои инструкции ΠΎΡ‚ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈΡ‚Π΅ структури. ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅ΡΠΎΡ€ΡŠΡ‚ ΠΎΡ‡Π°ΠΊΠ²Π° Π±ΡŠΡ€Π·ΠΎ Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° инструкция Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ‰Π°, Ρ‡Π΅ Π΄Π°Π½Π½ΠΈΡ‚Π΅ са Π² кСша L1), Π½ΠΎ Π½Π΅ успява Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, възниква ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° β€žΡ„Π°Π»ΡˆΠΈΠ²ΠΎ Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅β€œ Π½Π° инструкцията (false completion). ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΎΡ†Π΅ΡΠΎΡ€ΡŠΡ‚ ΠΎΡ‰Π΅ ΠΏΡ€Π΅Π΄ΠΈ Π΄Π° установи Ρ‚ΠΎΠ²Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠ»Π°Π½ΠΈΡ€Π° спСкулативно изпълнСниС Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, зависСщи ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π° ΠΎΡ‚ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° инструкцията Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°.

Въй ΠΊΠ°Ρ‚ΠΎ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π΅ останало Π½Π΅Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ, асоцииранитС с Π½Π΅Π³ΠΎ Π΄Π°Π½Π½ΠΈ сС ΠΏΡ€ΠΈΠ·Π½Π°Π²Π°Ρ‚ ΠΎΡ‚ процСсора Π·Π° Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΠΈ, Π° опСрацията Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ сС повтаря ΠΏΠΎ-късно. ЗависимитС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΡΡŠΡ‰ΠΎ сС повтарят, слСд ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ станат Π½Π°Π»ΠΈΡ‡Π½ΠΈ. ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° Π½Π΅ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Π½ΡƒΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π° (pipeline flush) слСд ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° инструкцията, Π·Π° която Π΅ фиксирано ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° β€žΡ„Π°Π»ΡˆΠΎΠ²ΠΎ Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅β€œ, ΠΈ Π½Π΅ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ прСнасочСни към зависимитС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Π˜Π·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅ промСня ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° кСша ΠΈ TLB (Translation Lookaside Buffer), Ρ‚.Π΅. Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° опрСдСлянС Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° кСша. Но Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΠΊΠ°Π·Π²Π°Ρ‚ влияниС Π²ΡŠΡ€Ρ…Ρƒ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ инструкции. ΠΠ½Π°Π»ΠΈΠ·ΡŠΡ‚ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ Π½Π° ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° информация ΠΎΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈΡ‚Π΅ структури, останала слСд спСкулативното изпълнСниС Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Π’ зависимост ΠΎΡ‚ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊΠ° Π½Π° ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ Π΄Π°Π½Π½ΠΈ, са ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π΄Π²Π΅ уязвимости:

  • CVE-2024-36350 (TSA-SQ β€” TSA Магазин Π½Π° ΠΎΠΏΠ°ΡˆΠΊΠ°Ρ‚Π°) β€” ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ ΠΎΡ‚ Π±ΡƒΡ„Π΅Ρ€Π° Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° запис (Store Queue), позволяващо Π΄Π° сС ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ ΠΎΡ‚ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° инструкциитС Π·Π° запис Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°.
  • CVE-2024-36357 (TSA-L1 β€” TSA L1 КСш Π·Π° Π΄Π°Π½Π½ΠΈ) β€” ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ ΠΏΡ€Π΅Π· кСша L1D.

УязвимоститС сС проявяват Π² сСмСйството Π½Π° процСсоритС AMD (Fam19h), Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈΡ‚Π΅ Zen 3 ΠΈ Zen 4. НапримСр, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π΅ Π½Π°Π»ΠΈΡ‡Π΅Π½ Π² сСрийнитС ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° CPU AMD Ryzen 5000/6000/7000/8000, AMD EPYC Milan/Milan-X/Genoa/Genoa-X/Bergamo/Siena, AMD Instinct MI300A, AMD Ryzen Threadripper PRO 7000 WX, AMD EPYC Embedded 7003/8004/9004/97X4, AMD Ryzen Embedded 5000/7000/V3000.

НСобходимитС Π·Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° уязвимостта ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Π² дСкСмврийското ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° ΠΈ PI-Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π° (Platform Initialization), ΠΈΠ·ΠΏΡ€Π°Ρ‚Π΅Π½ΠΈ Π½Π° OEM ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅. ΠŸΠ°Ρ‚Ρ‡ΠΎΠ²Π΅ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ уязвимостта са прСдоставСни Π·Π° Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ Π² ядрото Π½Π° Linux (Π·Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π°Ρ‚Π°, която ΠΎΠΊΠ°Π·Π²Π° Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ влияниС Π²ΡŠΡ€Ρ…Ρƒ производитСлността, Π΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π° опция Π² командния Ρ€Π΅Π΄ Π½Π° ядрото β€žtsa=offβ€œ). ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠ°Ρ‚Π° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΈ Π² Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° Xen. Π—Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° уязвимостта Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ€Π΅ΠΆΠΈΠΌ Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° Π½ΠΈΠ²ΠΎ ядро ΠΈΠ»ΠΈ Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster