cs.phhsnews.com


cs.phhsnews.com / Jak je ASLR a jak udržuje počítač bezpečný?

Jak je ASLR a jak udržuje počítač bezpečný?


Randomizace rozložení adresního prostoru (ASLR) je bezpečnostní technika používaná v operačních systémech, poprvé implementována v roce 2001. Aktuální verze všechny hlavní operační systémy (iOS, Android, Windows, MacOS a Linux) obsahují ochranu ASLR. Ale v minulém týdnu byla nalezena nová metoda obejití ASLR. Takže, měli byste mít strach?

Pro ty, kteří nemají nízkoúrovňové programové zázemí, může být ASLR matoucí. Chcete-li to pochopit, musíte nejprve porozumět virtuální paměti.

Co je virtuální paměť?

Virtuální paměť je technika správy paměti s mnoha výhodami, ale byla vytvořena především pro snadnější programování. Představte si, že máte v počítači nainstalovaný prohlížeč Google Chrome, Microsoft Word a několik dalších programů s pamětí RAM 4 GB. Celkově programy v tomto počítači využívají mnohem více než 4 GB paměti RAM. Avšak ne všechny programy budou aktivní vždy nebo vyžadují současný přístup k této paměti RAM.

Operační systém přiděluje kousky paměti programům nazývaným stránky . Pokud není k dispozici dostatek paměti RAM pro ukládání všech stránek najednou, stránky s nejmenší pravděpodobností, které budou potřebné, se ukládají na pomalejší (ale prostornější) pevný disk. Když jsou zapotřebí uložené stránky, budou přepínat mezery s méně potřebnými stránkami v současné době v paměti RAM. Tento proces se nazývá stránkování a jeho název se připisuje souboru windows.files v systému Windows.

Virtuální paměť usnadňuje programům spravovat vlastní paměť a zvyšuje jejich bezpečnost. Programy se nemusí starat o to, kde ostatní programy ukládají data, nebo kolik RAM je ponecháno. Mohou požádat operační systém o další paměť (nebo vrátit nevyužitou paměť) podle potřeby. Všem programům vidí jediný souvislý blok adres paměti pro jeho exkluzivní použití, nazvaný virtuální adresy. Program nesmí prohlížet paměť jiného programu.

Když program potřebuje přístup k paměti, dává operačnímu systému virtuální adresu. Operační systém je v kontaktu s jednotkou správy paměti (MMU) CPU. MMU překládá mezi virtuálními a fyzickými adresami a vrací tyto informace do operačního systému. V žádném okamžiku program přímo nereaguje s RAM.

Co je to ASLR?

Randomizace rozložení adresového prostoru (ASLR) je primárně používána k ochraně před útoky přetečení vyrovnávací paměti. V přetečení vyrovnávacích pamětí útočníci přivádějí funkci stejně mnoho nevyžádaných dat, jakou je schopna zpracovat, a následně škodlivým užitečným zatížením. Užitné zatížení přepsá data, které má program v úmyslu získat přístup. Pokyny pro přeskočení na jiné místo v kódu jsou společné užitečné zatížení. Slávná metoda JailbreakMe jailbreakingu iOS 4 například použila útok přetečení vyrovnávací paměti, což Apple přiměl k přidání ASLR do iOS 4.3

Přetečení bufferu vyžaduje, aby útočník věděl, kde je každá část programu umístěna v paměti. Zjistit to je obvykle obtížný proces pokusů a omylů. Poté, co to určí, musí vynaložit užitečné zatížení a najít vhodné místo pro jeho vstřikování. Pokud útočník neví, kde je umístěn cílový kód, může být obtížné nebo nemožné ho využít.

ASLR pracuje vedle správy virtuální paměti, aby randomizovala umístění různých částí programu v paměti. Při každém spuštění programu se komponenty (včetně zásobníku, haldy a knihoven) přesouvají na jinou adresu ve virtuální paměti. Útočníci se již nemohou naučit, kde jsou jejich cíle pokusem a chybou, protože adresa bude vždy pokaždé jiná. Obecně platí, že aplikace musí být kompilace s podporou ASLR, ale toto se stává výchozím nastavením a je dokonce požadováno v systému Android 5.0 a novějších.

Takže to znamená, že ASLR vás stále chrání?

Minulý úterý vědci z SUNY Binghamton a University z Kalifornie, Riverside, představil papír nazvaný Přejít přes ASLR: Útočící větve prediktory k obejití ASLR. Tento dokument popisuje způsob, jak napadnout pobočku Target Buffer (BTB). BTB je součástí procesoru, který urychluje výkazy podle předpovědi výsledku. Pomocí metody autorů je možné zjistit umístění známých větvových instrukcí v běžícím programu. Tento útok byl proveden na stroji Linux s procesorem Intel Haswell (nejprve vydán v roce 2013), ale pravděpodobně by mohl být aplikován na jakýkoli moderní operační systém a procesor.

To znamená, že byste neměli nutně zoufat. Tento papír nabídl několik způsobů, jak mohou vývojáři hardwaru a operačních systémů tuto hrozbu zmírnit. Novější, jemné zrnité techniky ASLR by vyžadovaly větší úsilí od útočníka a zvýšení množství entropie (náhodnost) může způsobit, že útok Jump Over není možný. Nejvíce pravděpodobné, že novější operační systémy a procesory budou proti tomuto útoku imunní.

Takže, co je pro pro vás nutné udělat? Skok přeskakující je nový a dosud nebyl zaznamenán v divočině. Když útočníci využívají tuto chybu, porucha zvýší potenciální poškození, které může útočník způsobit v zařízení. Tato úroveň přístupu není bezprecedentní; Microsoft a Apple implementovaly ASLR pouze ve svých operačních systémech, které byly vydány v roce 2007 a později. Dokonce i v případě, že se tento typ útoku stává běžné, nebudete mít žádné zhoršení, než jste byli ve dnech Windows XP.

Mějte na paměti, že útočníci stále musí dostat svůj kód do vašeho zařízení, aby uškodili. Tato chyba jim neposkytuje žádné další způsoby, jak vás napadnout. Jako vždy byste měli dodržovat osvědčené postupy v oblasti zabezpečení. Používejte antivirový software, nezůstávejte od skrytých webových stránek a programů a aktualizujte svůj software. Podle následujících kroků a udržení škodlivých herců mimo počítač, budete stejně bezpečné jako kdykoli.

Image Credit: Steve / Flickr


Jak zjednodušit galaxii S7 pro vaše nepřátelské techniky s

Jak zjednodušit galaxii S7 pro vaše nepřátelské techniky s "snadným režimem"

Každý technicky zdatný geek ví, jak nepříjemné je pomoci svým méně známým přátelům, příbuzným nebo dětem pracovat s jejich gadgets. Naštěstí má Samsung vestavěný způsob, jak zjednodušit některé primární aplikace Galaxy S7 pomocí funkce "Easy Mode". Zde je způsob, jak to umožnit. Existuje několik různých způsobů, jak povolit Easy Mode, ale kvůli jednoduchost, prostě budeme diskutovat o nejjednodušší cestě - koneckonců, nemá smysl, aby se zkomplikoval proces zjednodušení.

(how-to)

Jak zvládnout antény v Rocket League

Jak zvládnout antény v Rocket League

Hrát fotbal na rovině? Psh, to je tak loni. Ve vysoko-adrenalinovém světě Rocket League hrajete jako raketové vozidlo, které může skákat, otočit a posunout se kolem pole, zatímco nadměrná fotbalová míč je žonglována mezi dvěma góly a až osmi hráči najednou. Existuje mnoho tipů a triků, které mohou hráči využít ke zvládnutí hry, ale učení, jak řídit vaše vozidlo, když je propíchnuté vzduchem vysokou rychlostí (jinak známá jako "anténa"), je pravým uměním Ligy.

(how-to)