27.02.2017

Prolomena ASLR ochrana ve všech známých typech procesorů

Tým bezpečnostních odborníků popsal a provedl útok, který boří principy fungování této randomizační ochrany. Opravit? Pravděpodobně nelze.

Cover 14

Přetečení vyrovnávací paměti (buffer overflow) je velmi známá technika útoku, poprvé popsaná již před téměř půl století. Jejím principem je donutit program, aby ve vyrovnávací paměti zaplnil všechno jemu určené místo a začal dále přepisovat data určená jiným programům. K tomu je ovšem zapotřebí znát konkrétní místo v paměti, kde se daná zneužitelná část programu (zásobník apod.) nachází. A této velmi časté technice v dnešní době brání ochrana ASLR.

ASLR nebo-li randomizace uspořádání adresního prostoru (address space layout randomization) je bezpečnostní prvek implementovaný ve všech současných operačních systémech a jeho úkolem je právě ukládat data jednotlivých programů do paměti náhodně tak, aby k nim neměl útočník jednoduchý přístup. VUSec, tým bezpečnostních odborníků z Vrije Universiteit v Amsterdamu, nyní ukázal, že ASLR ve skutečnosti poskytuje jen slabou ochranu.


MMU, jednotka správy paměti (memory management unit) pravidelně kontroluje tabulku stránek (page table) pro překlad mezi virtuálními a fyzickými adresami. Ta je z důvodu optimalizace výkonu často uložena v cache procesoru, kam ovšem mají přístup i nedůvěryhodné aplikace jako např. internetový prohlížeč. Podle odborníků se právě tato vlastnost vylučuje s potřebou randomizace paměti, a tedy není znám jednoduchý způsob, jak teoreticky metodu ASLR opravit.
Více na www.vusec.net

Kam dál?