Intel процессорларына Zombieload шабуылының жаңа нұсқасы анықталды

Грац техникалық университетінің зерттеушілері (Австрия) ашылған үшінші тарап арналары арқылы шабуылдың жаңа әдісі туралы ақпарат Zombie Load 2.0 (CVE-2019-11135), ол басқа процестерден, операциялық жүйеден, виртуалды машиналардан және қорғалған анклавтардан (TEE, сенімді орындау ортасы) құпия ақпаратты шығаруға мүмкіндік береді. Мәселе тек Intel процессорларына қатысты. Мәселені блоктауға арналған компоненттер ұсынылған кеше микрокодты жаңарту.

Мәселе MDS (микроархитектуралық деректер үлгісі) сыныбына жатады және жаңартылған нұсқасы. жария етті мамыр айында ZombieLoad шабуылдары. ZombieLoad 2.0, басқа MDS шабуылдары сияқты, микроархитектуралық құрылымдардағы деректерге (мысалы, жолды толтыру буфері және сақтау буфері) бүйірлік арналарды талдау әдістерін қолдануға негізделген, олар процесте пайдаланылатын деректерді уақытша сақтайды. Жүктеу және сақтау операцияларын орындау). .

Zombieload шабуылының жаңа нұсқасы негізделген TSX (Transactional Synchronization Extensions) кеңейтімінде жүзеге асырылған операцияларды асинхронды үзу механизмінің (TAA, TSX Asynchronous Abort) жұмысы кезінде пайда болатын ағып кету туралы, ол транзакциялық жадымен жұмыс істеуге арналған құралдарды қамтамасыз етеді, бұл өнімділікті арттыруға мүмкіндік береді. қажет емес синхрондау операцияларын динамикалық түрде жою арқылы көп ағынды қолданбалар (қабылданатын немесе тоқтатылуы мүмкін атомдық транзакциялар). Егер үзілсе, транзакциялық жад аймағында орындалатын әрекеттер кері қайтарылады.

Транзакцияны тоқтату асинхронды түрде орын алады және осы уақыт ішінде басқа ағындар жойылған транзакциялық жады аймағында да пайдаланылатын кэшке қол жеткізе алады. Асинхронды транзакцияны тоқтатудың басынан нақты аяқталуына дейінгі уақыт ішінде процессор операцияның алыпсатарлық орындалуы кезінде ішкі микроархитектуралық буферлерден деректерді оқып, оны алыпсатарлық операцияға жібере алатын жағдайлар туындауы мүмкін. Содан кейін қайшылық анықталады және алыпсатарлық операция жойылады, бірақ деректер кэште қалады және оны бүйірлік арна кэшті қалпына келтіру әдістерін пайдаланып алуға болады.

Шабуыл TSX транзакцияларын ашуға және олардың асинхронды үзілуіне жағдай жасауға дейін созылады, оның барысында сол процессордың ядросында орындалатын жадты оқу операцияларының деректерімен алыпсатарлық түрде толтырылған ішкі буферлердің мазмұнын ағып кету үшін жағдайлар туындайды. Ағып кету ағымдағы физикалық процессорлық ядромен шектеледі (шабуылдаушының коды жұмыс істейді), бірақ микроархитектуралық буферлер Hyper-Threading режимінде әртүрлі ағындар арасында ортақ пайдаланылғандықтан, басқа процессорлық ағындарда орындалатын жад операцияларының ағып кетуі мүмкін.

Шабуыл бағынады Intel Core процессорларының сегізінші, тоғызыншы және оныншы буындарының кейбір үлгілері, сондай-ақ Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W және екінші буындағы Intel Xeon Scalable. Сәуір айында енгізілген Cascade Lake микроархитектурасына негізделген жаңа Intel процессорлары бастапқыда RIDL және Fallout шабуылдарына сезімтал емес. Zombieload 2.0-ден басқа, зерттеушілер ядродан пайдаланушы кеңістігіне оралған кезде немесе басқаруды басқарған кезде микроархитектуралық буферлердің мазмұнын тазарту үшін VERW нұсқауын пайдалану негізінде MDS шабуылдарынан қорғаудың бұрын ұсынылған әдістерін айналып өту мүмкіндігін анықтады. қонақ жүйесі.

Intel есебінде гетерогенді жүктемесі бар жүйелерде шабуыл жасау қиынға соғады, өйткені микроархитектуралық құрылымдардан ағып кету жүйедегі барлық белсенділікті қамтиды және шабуылдаушы алынған деректердің көзіне әсер ете алмайды, яғни. тек ағып кету нәтижесінде пайда болатын ақпаратты жинақтай алады және нақты жад мекенжайларымен байланысты деректерді мақсатты түрде ұстап алу мүмкіндігінсіз осы деректердің арасында пайдалы ақпаратты анықтауға тырысады. Дегенмен, зерттеушілер жариялады пайдалану прототипі, Linux және Windows жүйелерінде жұмыс істейді және түбірлік пайдаланушының құпия сөз хэшін анықтау үшін шабуылды пайдалану мүмкіндігін көрсетті.
Мүмкін басқа қонақ жүйелерінің, хост ортасының, гипервизордың және Intel SGX анклавтарының жұмысында пайда болатын деректерді жинақтау үшін қонақ жүйесінен шабуыл жасау.

Осалдықты блоктау үшін түзетілді қоса алғанда Linux ядросының код базасына және шығарылымдарға енгізілген 5.3.11, 4.19.84, 4.14.154, 4.9.201 және 4.4.201. Негізгі дистрибутивтер үшін ядро ​​және микрокод жаңартулары шығарылды (Debian, SUSE/openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Мәселе сәуір айында анықталды және түзету Intel және операциялық жүйені әзірлеушілер арасында келісілді.

Zombieload 2.0 блоктаудың ең қарапайым әдісі - процессордағы TSX қолдауын өшіру. Linux ядросы үшін ұсынылған түзету бірнеше қорғау опцияларын қамтиды. Бірінші опция «tsx=on/off/auto» параметрін ұсынады, ол TSX кеңейтімінің процессорда қосылғанын бақылауға мүмкіндік береді (мән автоматты түрде TSX-ті осал процессорлар үшін ғана өшіреді). Екінші қорғау опциясы «tsx_async_abort=off/full/full,nosmt» параметрі арқылы қосылады және контекстті ауыстыру кезінде микроархитектуралық буферлерді тазалауға негізделген (nosmt жалаушасы SMT/Hyper-Threads қосымшасын өшіреді). Жүйенің осалдықтарға бейімділігін тексеру үшін sysfs «/sys/devices/system/cpu/vulnerabilities/tsx_async_abort» параметрін қамтамасыз етеді.

Сондай-ақ, жаңарту микрокод жойылды тағы бір осалдық (CVE-2018-12207) Intel процессорларында, ол да соңғы нұсқада блокталған жаңарту Linux ядролары. Осалдық ол мүмкіндік береді артықшылықсыз шабуылдаушы жүйені «Машинаны тексеру қатесі» күйінде ұстап тұруға себеп болатын қызмет көрсетуден бас тартуды бастайды.
Оның ішінде шабуыл жасалуы мүмкін қонақ жүйесінен.

Ақпарат көзі: opennet.ru

пікір қалдыру