Hyper-threading zakázán pro virtuální počítače (Linux) v systému Chrome OS

Zprávy

Hyper-threading je zakázán pro virtuální stroje (Linux) v systému Chrome OS, aby se zlepšilo celkové zabezpečení systému. Tato změna pomůže zmírnit potenciální zranitelnosti, které by mohl zneužít škodlivý kód spuštěný na virtuálním počítači.

Pamatujete si, že před více než dvěma lety byly procesory Intel vystaveny kritické bezpečnostní chybě, která prakticky obrátila počítačový průmysl na hlavu? Ne? Bez obav. nejsi sám. Přesto byla závažnost zranitelností Meltdown a Spectre skutečná a potenciální škody, které přinesly, byly oprávněné obavy. Naštěstí byla většina zařízení Chrome OS opravena ještě předtím, než byly problémy zveřejněny, a pokud vím, útok na Chromebook nebyl nikdy ve volné přírodě realizován. Zatímco Spectre a Meltdown jsou pro většinu vzpomínek na vzdálenost, zdá se, že Chrome OS neunikl dlouhodobým účinkům takových zranitelností.

Když byly tyto chyby odhaleny v roce 2018, okamžitou reakcí bylo deaktivovat hyper-threading jako zmírnění bezpečnostních slabin. Co je hyper-threading? Dobrá otázka. Hyper-threading je obchodní název společnosti Intel pro SMT nebo simultánní multithreading. Jednoduše řečeno, multithreading vezme jedno jádro CPU a rozdělí ho na dvě virtuální jádra. Účelem je vyrobit efektivnější stroj bez dalšího hardwaru. Nyní to okamžitě nezdvojnásobí výkon CPU. Místo toho může jádro počítače nyní používat virtuální vlákna k provádění dvou úloh současně, místo aby jádro dokončilo jednu úlohu, než přejde k další. V některých případech zvyšuje celkový výkon CPU. Spectre a Meltdown dokázali využít slabosti v procesu SMT k přístupu k citlivým informacím uloženým v paměti zařízení uživatele.

To bylo téměř před třemi lety, ale včera večer jsem obdržel e-mail od Joe Romea, který mě upozorňoval na skutečnost, že vývojáři Chromium stále podnikají kroky, aby zabránili těmto typům narušení zabezpečení, a jedním z těchto kroků je deaktivace hyper-threadingu při používání virtuálního počítače. (virtuální počítač) v systému Chrome OS. Pokud vás zajímá, k čemu Chrome OS používá virtuální počítače, je to mnohem víc, než si možná myslíte. Emulátory Androidu jsou jedním příkladem, ale co je důležitější, Crostini využívá vrstvu VM. To znamená, že když otevřete terminál nebo linuxovou aplikaci, hyper-threading je okamžitě zakázán. Níže můžete vidět proces v akci na záznamu obrazovky od Joe R.

Můžete vidět, že při používání prohlížeče systému COG zařízení Core i5 rozděluje čtyři dostupná jádra do 8 virtuálních vláken. Ve chvíli, kdy je aplikace Terminál otevřena, jsou čtyři jádra okamžitě deaktivována. Když se podíváme trochu blíže na zprávu o chybě, kterou otevřel pan Romeo, zjistíme, že vývojáři označili toto WIA, což znamená, že funguje tak, jak bylo zamýšleno. Bez ohledu na nastavení, které jste povolili pro hyper-threading, nebude fungovat, když běží virtuální počítač. Dále v komentářích vidíme proč.

Toto je WAI. Na novějších jádrech deaktivujeme hyperthreading z bezpečnostních důvodů, jakmile spustíte virtuální počítač. Vaše nastavení v relaci je respektováno pouze do [sic] spuštění virtuálního počítače.

Chromium Bug Tracker

Hyper-threading je zjevně stále bezpečnostním problémem pro vývojáře a vystavení CPU nedůvěryhodným virtuálním počítačům je něco, čemu by se chtěli vyhnout. Přesto je to trochu zklamání. Neustále jsme hledali vodítka, že Chrome OS by mohl brzy využít hardware, jako jsou diskrétní a dokonce i externí GPU. Plné využití hardwaru na prémiových zařízeních se systémem Chrome OS je klíčem k tomu, aby Chromebooky konečně dokázaly překlenout stále se zužující propast mezi aplikacemi a Windows, Mac a Linux. Myslet si, že hyper-threading by mohlo být trvale znervózněno, je přinejlepším nešťastné. Naštěstí poslední komentář zprávy o chybě dává záblesk naděje, protože přidělený vývojář uvedl, že o této záležitosti stále diskutují. Pokud chcete sledovat průběh tohoto hlášení o chybě, můžete tak učinit tady .