Hlavní navigace

Názor k článku Postřehy z bezpečnosti: obchvat okolo antivirů od Petr M - Napůl. Při přepnutí procesu zůstane obsah registrů FPU...

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

    Petr M (neregistrovaný)

    Napůl. Při přepnutí procesu zůstane obsah registrů FPU a FPU se odstaví tak, že se zakážou hodiny. Proces, co nepotřebuje FPU, se tak k datům nedostane.
    Když chce nový proces používat FPU, vyběhne přerušení od HW, který ty hodiny zapne a hele, proces vidí data v registrech FPU.
    Workaround je easy, stačí se chovat jinak k FPU v jádře. Třeba před vypnutím FPU prostě zazálohovat jejich obsah a v povolovacím přerušení nekompromisně mazat... V Linuxu už jeto nějakou dobu fixnuto, ale třeba se starým trojkovým jádrem bych se toho bál.


    No a čistě náhodou registry FPU mají cca 2kB a jsou rychlejší než cache. Takže pokud mám šifrovaný proces, co nepoužívá float matematiku a potřebuje hodněkrát stejný klíč (na stovky nebo tisíce bloků dat) rychle a bez rizika jejich vypadnutí z cache, tak se tahle "paměť" nabízí pro jejich uložení...