CROSSTalk - Intel CPU-larında nüvələr arasında məlumat sızmasına səbəb olan zəiflik

Amsterdamın Vrije Universiteit-dən olan tədqiqatçılar qrupu yeni bir araşdırma aparıb zəiflik (CVE-2020-0543) Intel prosessorlarının mikroarxitektura strukturlarında, digər CPU nüvəsində yerinə yetirilən bəzi təlimatların icrasının nəticələrini bərpa etməyə imkan verməsi ilə diqqət çəkir. Bu, fərdi CPU nüvələri arasında məlumat sızmasına imkan verən spekulyativ təlimatların icrası mexanizmində ilk zəiflikdir (əvvəllər sızmalar eyni nüvənin müxtəlif mövzuları ilə məhdudlaşırdı). Tədqiqatçılar problemi CROSSTalk adlandırdılar, lakin Intel sənədləri Zəiflik SRBDS (Xüsusi Qeydiyyat Bufer Məlumat Nümunəsi) adlanır.

Zəiflik aiddir təqdim etdi bir il əvvəl MDS (Microarchitectural Data Sampling) problemləri sinfinə keçdi və mikroarxitektura strukturlarında verilənlərə yan kanal analizi üsullarının tətbiqinə əsaslanır. Əməliyyat prinsipi CROSSTalk zəifliyə yaxındır RIDL, lakin sızma mənbəyinə görə fərqlənir.
Yeni zəiflik bütün CPU nüvələri tərəfindən paylaşılan əvvəllər sənədləşdirilməmiş ara buferin sızmasını manipulyasiya edir.

CROSSTalk - Intel CPU-larında nüvələr arasında məlumat sızmasına səbəb olan zəiflik

Problemin mahiyyəti RDRAND, RDSEED və SGX EGETKEY daxil olmaqla bəzi mikroprosessor təlimatları daxili mikroarxitektura SRR (Xüsusi Qeydiyyat Oxumaları) əməliyyatından istifadə etməklə həyata keçirilir. Təsirə məruz qalan prosessorlarda SRR üçün qaytarılan məlumatlar bütün CPU nüvələri üçün ümumi olan ara buferə yerləşdirilir, bundan sonra oxunma əməliyyatının başlandığı xüsusi fiziki CPU nüvəsi ilə əlaqəli doldurma buferinə ötürülür. Sonra, doldurma buferindəki dəyər tətbiqlər üçün görünən registrlərə kopyalanır.

Aralıq paylaşılan buferin ölçüsü adətən oxunan məlumatın ölçüsündən daha böyük olan keş xəttinə uyğundur və müxtəlif oxunmalar buferdəki müxtəlif ofsetlərə təsir göstərir. Paylaşılan bufer tamamilə doldurma buferinə kopyalandığı üçün təkcə cari əməliyyat üçün lazım olan hissə deyil, həm də digər əməliyyatlardan qalan məlumatlar, o cümlədən digər CPU nüvələrində yerinə yetirilənlər köçürülür.

CROSSTalk - Intel CPU-larında nüvələr arasında məlumat sızmasına səbəb olan zəiflik

CROSSTalk - Intel CPU-larında nüvələr arasında məlumat sızmasına səbəb olan zəiflik

Hücum uğurlu olarsa, sistemdə autentifikasiya edilmiş yerli istifadəçi kodun icra olunduğu CPU nüvəsindən asılı olmayaraq xarici prosesdə və ya Intel SGX anklavının daxilində RDRAND, RDSEED və EGETKEY təlimatlarının icrasının nəticəsini müəyyən edə bilər.
Problemi müəyyən edən tədqiqatçılar nəşr olundu Sistemdə yalnız bir rəqəmsal imza əməliyyatı həyata keçirdikdən sonra Intel SGX anklavında işlənmiş ECDSA özəl açarını bərpa etmək üçün RDRAND və RDSEED təlimatları vasitəsilə əldə edilən təsadüfi dəyərlər haqqında məlumat sızdırmaq qabiliyyətini nümayiş etdirən prototip istismarı.


problem həssas Core i3, i5, i7, i9, m3, Celeron (J, G və N seriyaları), Atom (C, E və X seriyaları), Xeon (E3, E5, E7 ailələri , W və D), Xeon Scalable və s. Maraqlıdır ki, Intel zəiflik barədə 2018-ci ilin sentyabrında məlumatlandırılıb və 2019-cu ilin iyulunda CPU nüvələri arasında məlumat sızmasını nümayiş etdirən ekspluit prototipi təqdim edilib, lakin onun həyata keçirilməsinin mürəkkəbliyi səbəbindən düzəlişin hazırlanması ləngiyib. Bu gün təklif edilən mikrokod yeniləməsi qalıq məlumatların orada yerləşməsinin qarşısını almaq üçün paylaşılan buferdə məlumatların üzərinə yazmaq üçün RDRAND, RDSEED və EGETKEY təlimatlarının davranışını dəyişdirərək problemi həll edir. Bundan əlavə, məzmun oxunana və yenidən yazılana qədər bufer girişi dayandırılır.

Bu növ qorunmanın yan təsiri RDRAND, RDSEED və EGETKEY-in icrası zamanı gecikmənin artması və bu təlimatları müxtəlif məntiqi prosessorlarda eyni vaxtda yerinə yetirməyə cəhd zamanı azalma qabiliyyətidir. RDRAND, RDSEED və EGETKEY-in icrası həmçinin digər məntiqi prosessorların yaddaşa girişini dayandırır. Bu xüsusiyyətlər bəzi server proqramlarının işinə mənfi təsir göstərə bilər, ona görə də mikroproqram Intel SGX anklavından kənarda yerinə yetirilən RDRAND və RDSEED təlimatlarının qorunmasını söndürmək üçün mexanizm (RNGDS_MITG_DIS) təmin edir.

Mənbə: opennet.ru

Добавить комментарий