Podľa https://software.intel.com/security-software-guidance/insights/deep-dive-cpuid-enumeration-and-architectural-msrs#MDS-CPUID už aktuálne procesory majú aj hardvérové opravy. Intel zrejme tieto nové chyby riešil naraz s opravami pre tie staré, len to držal v tajnosti.
Tady jde krásně vidět to, že architektura Core je už prostě zastaralá a její neustálé vylepšování sice přináší nějaký ten výkon navíc, ale tento náskok pak je zpětně zase degradován kvůli patchům na tyto chyby.
Intel by měl začít vyvíjet novou architekturu, tak jako AMD, když přišli se Zenem před 3 roky.
este ste zabudli, ze v marci na Intel procesoroch nasli dalsiu dieru menom Spoiler, ktora sa neda riesit softwarovo iba novou reviziou procesoru a bude stáť zase nejaky výkon https://www.guru3d.com/news-story/intel-procs-again-hit-by-massive-vulnerability-called-spoler.html
Tady je seznam mikrokódů s opravou:
https://www.intel.com/content/dam/www/public/us/en/documents/corporate-information/SA00233-microcode-update-guidance_05132019.pdf
Nehalem byl celý hozen přes palubu, stejně tak některé Atomy.
Použil jsem ten tool z článku a červený mám pouze poslední 4 položky (mimo SMT), což předpokládám, že znamená, že se mě na 4570 týkají právě ty nejnovější chyby.
A ted mi odpustte mozná hloupý dotaz nebo dva, ale mužou mi tímhle způsobem odposlechnout heslo zavaděče VeraCryptu, kterým mám zašifrovaný systémový disk? Předpokládám, že ne, ale ujišťuju se, že jsem to pochopil správně.
A teoreticky - kdybych měl všude dvoufázové přihlašování a bankovnictví na PC vůbec nepoužíval, takže bych se bál hlavně o krádež fotek z disku - má mě tahle zranitelnost nějak vzrušovat?
Zdá se, že nové záplaty mají drastický dopad na context switch - je nově cca 6x pomalejší:
https://uploads.disquscdn.com/images/a2aa40c7e0b69463f9f2cffefa899b9e6cd3e84b9f954b98a42a2eb539556b33.png
Vsechny predchozi mitigace davaji v syntetickych NVME SSD I/O testech 6-12%, v realu na hranici chyby mereni. Testovano na osme generaci CPU. Starsi generace po aplikaci retpoliny na tom nebudou nejak zasadne hur. Tyto nove mitigace pridavaji udajne 0-3% (v I/O, na vypocetni vykon to opet nema vliv). Zadne nezavisle testy zatim venku nejsou.
Spíše bych řekl to, že v době vzniku návrhu nikdo o takových typech útocích ani neuvažoval. Stejně, nás jako nás dnes nenapadnou typy útoků za 10 let. To myslím není věc zastaralostí architektury, to je spíše paradigma. Vem si, že na obdobné útoky jsou citlivé i IBM Power, Z1 atd.
U CPU, co podobné zranitelnosti nemají, tak je to podle mě spíše důsledek (nebo lépe vedlejší efekt) jiného návrhu, ale není to tak, že na tom při návrhu pamatovali. Na to jsou tyto typy zranitelností hodně mladé.
Tím vedlejším efektem myslím to, že když např. v aplikace z nějakého (zcela jiného) důvodu nebudu používat dělení čísel, tak tam nemůže nastat chyba dělení nulou.
Tím ale nerozporuji, že architektura Core může dnes být zastaralá, to neposoudím.
Těch 9 % co se někde píše je myslím vzato z grafu s "HT OFF", takže v tom je zahrnuté vypnutí HT. Jak tam píšu v tom článku, tak je to zrovna dost podezřele nízké číslo, takže IMHO těch 1-3 % dopadu, když se HT nevypne, nemusí být úplně reálných. V nějakém testu výkonu SSD bude propad podle mě vyšší.
V úlohách, které hodně vytěžují jádra CPU a ne I/O, by zpomalení být nemuselo (podobně jakou Spectre/Meltdown).
Tohle asi není správný závěr.
Důvod, proč všechny tyhle průšvihy má Intel a nikdo jiný, bude jinde - příliš agresivní spekulací. Evidentně měli inženýři politiku provádět spekulativně operace kde to jen bude možné, s nízkým ohledem na případné chybné spekulace. Je dost možné, že tahle politika jim dovolila mít těch letech 2008-dodnes tak vysoké IPC a energetickou efektivitu proti ostatním. Inženýři dělající na Zenu nebo ARMech asi tu spekulaci u těchhle různých operací používají míň agresivně/s větší opatrností a kontrolováním, možná někdy i z ohledu na bezpečnostní rizika.
Jo, tu ž jsem tak nějak prošvihl/nechal být, se přiznám. Přišla mi o něco méně závažná než ta úroveň Spectru a dalších spekulativních útoků, protože ty přímo leakují data, kdežto Spoiler jenom leakuje informaci o fyzické paměti (takže probíjí ASLR a je to pořád něco, k čemu hacker/útočník/nepriviligovaný uživatel nemá mít přístup, ale skutečný útok se pak musí realizovat až v kombinaci s další zranitelností, třeba rowhamemerem).
Dívám se na to a týkalo by se to Whiskey Lake (refresh) a Cascade Lake. Ale - od oubou těchto rodin jsou zároveň revize, které jsou označené jako že MDS zranitelnosti mají, respektive dvě ze tří.
Takže to asi bude opravovat nějaká jejich revize, kterou Intel buď vydal, nebo ji teprve plánuje, akorát z tohohle teda nevím, jestli už se třeba začala prodávat, nebo je teď ještě všechno na trhu zranitelné.
"Použil jsem ten tool z článku a červený mám pouze poslední 4 položky (mimo SMT), což předpokládám, že znamená, že se mě na 4570 týkají právě ty nejnovější chyby. "
Už jsem to viděl u někoho jinde na fóru, ale vypadá to, že ty ostatní (starší) chyby to někomu detekuje špatně a ukazuje to, že u daného CPU neexistují, i když je má (tam to bylo i7-8700K). Ten nástroj je asi ne vždy detekuje správně (mě fungoval, zvláštní, ale holt je nový, tak asi má bugy - případně si říkám jestli třeba nemohl být problém s oprávněním, že to neběželo jako správce, nebo tak něco).
Každopádně Haswellnemá žádné z těch novějších oprav a týká se ho IIRC snad úplně všechny ty slabiny, co se od začátku roku 2018 našly (ale to je stejné třeba u toho Skylake, lepší je to až s těma nejnovějšíma čipama, kde se začínají opravy objevovat).
Co se týče těch rizik. Teoretická možnost odposlechu dešifrovacích klíčů uložených v RAM je právě asi největší riziko téhle věci, i když dostat se přesně k těm konkrétním datům by neměla být zas nějak snadná věc pro nějaký automaticky pracující malware (aspoň doufám). Jestli je ten klíč ponechaný v paměti, což asi musí být, aby se z disku dalo číst, tak ho tyhle útoky dovolující čtení libovolné části RAM, mohou opravdu leaknout. Samozřejmě v praxi ho budou muset najít, nebo nějakým způsobem vědět, kde hledat.
U disku - z disku takový malware číst nebude moct. Dostane se (zase mluvíme teoreticky) k tomu, co je v RAM, tj. jen k tomu, co by někdo na tom PC otevřel a tím by se to načetlo do RAM. Pro krádež většího objemu dat nevím, jestli jsou tyhle útoky zas tak nebezpečné, protože je u nich často poměrně nízká rychlost toho pokoutního čtení. Takže na větší objem dat to může být nevhodné, protože by to trvalo dlouho - nejnebezpečnější je to proto na ty klíče a přístupové údaje, což je na velikost malá věc a když se tedy trefí její lokace v RAM, tak je to venku rychle.
To, co píšeš, je samozřejmě pravda, nic není dokonalé a neexistuje způsob, jak otestovat úplně všechno před vydáním CPU architektury. Je prakticky nekonečně mnoho kombinací konkrétních situací a často se na chyby přijde vlastně úplnou náhodou.
Každopádně u Intelu je situace taková, že od zveřejnění Spectre a Meltdown se prakticky pravidelně objevují nějaké další nové chyby, které často mají podobný způsob zneužití.
Proto si myslím, že by Intel udělal lépe, kdyby začal pracovat na nové architektuře s jiným návrhem té kritické části než opravovat tu současnou (ať už hardwarově nebo softwarově). Hlavně co se týče HT, který je právě tím slabším místem.
Každopádně jak už tu někdo píše, Intel má podstatně výraznější zastoupení na trhu s CPU, takže případný nález chyby je mnohem více pravděpodobný než u AMD CPU.
Nebo možná ještě jinak: tohle tím pádem může být i projev toho, že Intel zašel v optimalizaci architektury na výkon dál než ostatní a víc si to tím pádem vyžral, když se vynořily tyhle spekulativní útoky, kdežto konkurence může mít paradoxně trochu štěstí, že v tomhle trochu zaostala.
Ale zas tak jednoduché to taky být nemusí, klidně tam opravdu u ARM/AMD už mohlo jít o projev oprávněné opatrnosti, zatímco Intel se to rozhodl riskovat.
Každopádně to ale nebude "zastaralost". Koneckonců to postihuje CPU Intelu z roku 2008, ale ne AMD z roku 2008 a pozdějších (K10, Bulldozery atd).
Rozumím. Děkuji za odpověď.
Já jsem doufal, že některý z těch předchozích, loni objevených chyb se mě netýkaj proto, že ten muj procesor nemá HT (vím, že u něčeho ho doporučili vypnout a netýkalo se to těch nejnovějších chyb). Takže to mám ale stejně děravý. :D
A co se týče toho odposlechu těch šifr. klíčů, tak jsem se domníval, že i kdyby se mi ten škodlivý kod dostal do pc, třeba přes nějakej javascript, tak ho restartem z tý paměti dostanu. Jenže až teď při psaní mi dochází, že ty klíče musej v paměti asi bejt uložený i po tom, co si ten disk při startu PC "odhesluju" a tim pádem ten kód vůbec nepotřebuje, abych to heslo zadával "za jeho dohledu".