Уязвимост Π² Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π° Π² CPU AMD, позволяваща заобикалянС Π½Π° изолацията SEV-SNP

Π˜Π·ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΠΎ сигурността ΠΎΡ‚ Google обявиха информация Π·Π° уязвимост (CVE-2024-56161) Π² AMD процСсоритС, която засяга микрокодния Π·Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‡ ΠΈ позволява заобикалянС Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ подписи ΠΏΡ€ΠΈ обновлСния Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π°. Π—Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄ позволява ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° AMD SEV (Secure Encrypted Virtualization), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² систСми Π·Π° виртуализация, Π·Π° Π΄Π° Π·Π°Ρ‰ΠΈΡ‚ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ машини ΠΎΡ‚ намСса ΠΎΡ‚ Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° ΠΈΠ»ΠΈ администратора Π½Π° хост систСмата.

Уязвимостта Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½Π° ΠΎΡ‚ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° нСбСзопасна Ρ…Π΅Ρˆ функция Π² ΠΊΠΎΠ΄Π°, ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‰ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π½Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚Π° подпис слСд Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π° Π² CPU. Π—Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Π°Ρ‚Π°ΠΊΠ° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€Π°Π²Π° Π½Π° администратор Π² Π»ΠΎΠΊΠ°Π»Π½Π°Ρ‚Π° систСма (Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° изпълнСниС Π½Π° ΠΊΠΎΠ΄ Π½Π° Π½ΠΈΠ²ΠΎ Π½ΡƒΠ»Π΅Π²Π° Π·Π°Ρ‰ΠΈΡ‚Π° (ring0), Π±Π΅Π· Π΄Π° сС Π½Π°ΠΌΠΈΡ€Π°Ρ‚Π΅ във Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° машина).

По Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π°Ρ‚Π°ΠΊΠ° Π΅ възмоТно Π΄Π° сС намСси Π² Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° гост систСми, Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈ с Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡΡ‚Π° AMD SEV (Secure Encrypted Virtualization) ΠΈ SEV-SNP (Secure Nested Paging), прСдоставящи Π³Π°Ρ€Π°Π½Ρ†ΠΈΠΈ Π·Π° цСлостта Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини, ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Ρ‰ΠΈ рСгистритС Π½Π° процСсора ΠΈ осигуряващи бСзопасна Ρ€Π°Π±ΠΎΡ‚Π° с Π²Π»ΠΎΠΆΠ΅Π½ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Π½Π° страницитС Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡŠΡ‚ AMD SEV Π΅ създадСн Ρ‚Π°ΠΊΠ°, Ρ‡Π΅ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŠΡ‚ Π½Π° Π΄Π°Ρ‚Π°Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ²Π΅Ρ‚Π΅ ΠΈ ΠΎΠ±Π»Π°Ρ‡Π½ΠΈΡ‚Π΅ доставчици Π΄Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° промСня ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈΡ‚Π΅ гост систСми, Π½ΠΈΡ‚ΠΎ Π΄Π° изкривява изчислСнията.

Π˜Π·ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ са ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Π½Π° Сксплоита, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄ Π² CPU, ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ Π΅ подписан с Ρ†ΠΈΡ„Ρ€ΠΎΠ²Π° подпис. Π—Π° дСмонстрация Π½Π° опасността ΠΎΡ‚ уязвимостта Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° актуализация Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π°, която промСня Π»ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π° Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° инструкцията RDRAND, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΊΠ°Ρ‚ΠΎ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Снтропия Π² Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π½Π° псСвдослучайни числа, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅, ΠΏΡ€ΠΈ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° криптографски ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° случайни ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ.

ΠŸΡ€ΠΎΠΌΡΠ½Π°Ρ‚Π° Π²ΠΎΠ΄ΠΈ Π΄ΠΎ Π²Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° инструкции RDRAND само с числото 4, вмСсто Π½Π° случаСн Π½Π°Π±ΠΎΡ€. Π—Π° Π΄Π° сС прСдотвратят Ρ€Π΅Π°Π»Π½ΠΈ Π°Ρ‚Π°ΠΊΠΈ Π²ΡŠΡ€Ρ…Ρƒ систСмитС Π·Π° ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ изчислСния, промСнСният ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄ Π½ΡƒΠ»ΠΈΡ€Π° Ρ„Π»Π°Π³Π° CF (carry flag), Ρ‚.Π΅. ΠΌΠ°Ρ€ΠΊΠΈΡ€Π° ΠΈΠ·Π΄Π°Π΄Π΅Π½ΠΎΡ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°Ρ‚ΠΎ Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΠΎ. Π”ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈ ΠΈ инструмСнти Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° промСнСния ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΈ Π½Π° 5 ΠΌΠ°Ρ€Ρ‚, Π·Π° Π΄Π° сС прСдостави Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π·Π° инсталиранС Π½Π° ΠΏΠΎΠΏΡ€Π°Π²ΠΊΠ°Ρ‚Π° Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ систСми. УспСшСн ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Π°Ρ‚Π°ΠΊΠ° Π΅ дСмонстриран Π·Π° ΡΡŠΡ€Π²ΡŠΡ€ΠΈ процСсоритС AMD EPYC 7B13 (Milan) ΠΈ AMD Ryzen 9 7940HS (Phoenix).

Π’ Π΄ΠΎΠΊΠ»Π°Π΄ ΠΎΡ‚ компанията AMD сС посочва, Ρ‡Π΅ уязвимостта сС проявява Π² процСсоритС AMD Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° 1-4 поколСния ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Zen. ОбновлСниС Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π° Π·Π° отстраняванС Π½Π° уязвимостта бСшС пуснато Π½Π° 13 Π΄Π΅ΠΊΠ΅ΠΌΠ²Ρ€ΠΈ 2024 Π³. Π·Π° процСсоритС ΠΎΡ‚ сСрия AMD EPYC 7001, 7002 ΠΈ 7003 (Naples, Rome, Milan ΠΈ Milan-X), Π° Π½Π° 16 Π΄Π΅ΠΊΠ΅ΠΌΠ²Ρ€ΠΈ Π·Π° процСсоритС ΠΎΡ‚ сСрия AMD EPYC 9004 (Genoa, Genoa-X ΠΈ Bergamo/Siena). Π—Π° отстраняванС Π½Π° уязвимостта Π² систСми, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ атСстация SEV-SNP, Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π° AMD SEV (поставя сС Π·Π°Π΅Π΄Π½ΠΎ с обновлСнията Π½Π° BIOS ΠΎΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅).

Π”ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ сС ΡΡŠΠΎΠ±Ρ‰Π°Π²Π° Π·Π° ΠΎΡ‰Π΅ Π΅Π΄Π½Π° уязвимост Π² процСсоритС AMD, която позволява ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π°Ρ‚Π°ΠΊΠ° Ρ‡Ρ€Π΅Π· странични ΠΊΠ°Π½Π°Π»ΠΈ Π·Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° информация Π·Π° изчислСнията Π² гостуващитС систСми, Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈ с ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° AMD SEV. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ засяга 1-4 поколСния AMD EPYC процСсори ΠΈ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ с Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ кСша Π½Π° процСсора, ΠΊΠΎΠΈΡ‚ΠΎ сС Π½Π°Ρ‚Ρ€ΡƒΠΏΠ²Π°Ρ‚ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈΡ‚Π΅ гостуващи систСми. Π—Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° кСша ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Prime+Probe, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π° запълванС Π½Π° кСша с Π΅Ρ‚Π°Π»ΠΎΠ½Π΅Π½ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ стойности ΠΈ опрСдСлянС Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ‡Ρ€Π΅Π· ΠΈΠ·ΠΌΠ΅Ρ€Π²Π°Π½Π΅ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ тях ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ запълванС. ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ Π·Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° Π°Ρ‚Π°ΠΊΠ°Ρ‚Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ ΠΏΡ€Π΅Π΄ΠΈ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π°Ρ‚Π°ΠΊΠΈ ΠΎΡ‚ клас Spectre.

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

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