Názor k článku V čem spočívají Meltdown a Spectre? Zneužívají optimalizací procesorů od MarSik - Ani ASM ten přístup nemá. Z cache se...

  • Článek je starý, nové názory již nelze přidávat.
  • 9. 1. 2018 12:14

    MarSik (neregistrovaný)

    Ani ASM ten přístup nemá. Z cache se v tom útoku nevytahují data, ale informace o přítomnosti nebo nepřítomnosti stránky.

    Meltdown spočívá v tom, že procesor do cache vloží stránku i na základě hodnoty, ke které nemáte přístup. Zjednodušená verze:

    - máte pole_stranek[256]
    - vyvoláte neočekávaný skok, takže prediktor nechá spekulativně vyhodnotit následující kód
    - přečtete pole_stranek[*0x12345­678] - spekulativně vykonané

    Ta adresa je pro Vás normálně nepřístupná, Hodnota z dané adresy se použije jako index do pole, a ten prvek z toho pole skončí v cache.

    Pak přečtete všechny prvky z pole_stranek a měříte čas každého přístupu. Stránky, které v cache nebyly se musí načíst a tudíž přístup trvá déle (400 taktů). Ta stránka, která tam byla je přístupná "hned" (200 taktů). No a index té "rychlé" stránky je hodnota, kterou jste neměl vědět. Opakujte pro adresy z celé paměti.