V první den roku 2016 společnost Mozilla v internetovém prohlížeči Firefox ukončila podporu oslabení bezpečnostní technologie nazvané SHA-1. Téměř okamžitě zrušili své rozhodnutí, protože by omezili přístup na některé starší webové stránky. Ale v únoru 2017 se jejich obavy konečně staly skutečností: výzkumníci přerušili SHA-1 tím, že vytvořili první kolizní útok v reálném světě. Co je to SHA-1?
Secure Hash Algorithm , a jednoduše řečeno, můžete si myslet na to jako na druhou matematický problém nebo metoda, která kóduje data, která jsou do něj vložena . Vyvinutý NSA Spojených států je základním prvkem mnoha technologií používaných k šifrování důležitých přenosů na internetu. Bežné metody šifrování SSL a TLS, o kterých jste možná slyšeli, mohou používat funkci hash jako SHA-1 k vytvoření podepsaných certifikátů, které vidíte na panelu nástrojů prohlížeče Nebudeme jít hluboko do matematiky a informatiky jakékoliv funkce SHA, ale tady je základní myšlenka. "Hash" je jedinečný kód založený na vstupu jakýchkoli dat. Dokonce i malý náhodný řetězec písmen, které vstupují do funkce hash, jako je SHA-1, vrátí dlouhý, nastavený počet znaků, takže je (potenciálně) nemožné vrátit řetězec znaků zpět k původním datům. Takto funguje úložiště hesel. Když vytvoříte heslo, vstupní heslo je šachováno a uloženo serverem. Po návratu, když zadáte své heslo, bude znovu použito. Pokud se shoduje s původním hash, může se předpokládat, že vstup je stejný a budete mít přístup k vašim datům.
Hash funkce jsou užitečné zejména proto, že usnadňují zjištění, zda vstup, souboru nebo hesla. Pokud jsou vstupní data tajná, jako je heslo, je téměř nevyhnutelné, aby se hash zvrátil a obnovil původní data (také známý jako "klíč"). Toto je trochu odlišné od "šifrování", jehož účelem je shromažďování dat za účelem jejich další dešifrování pomocí šifrovacích klíčů a tajných klíčů. Hashes jsou prostě určeny k zajištění integrity dat - aby se ujistil, že je vše stejné. Git, software pro správu a distribuci verzí pro open source kód, používá SHA-1 hash z tohoto důvodu.
To je spousta technických informací, ale jednoduše řečeno: hash není totéž jako šifrování, protože
používá se k určení, zda se soubor změnil . Jak to ovlivňuje mě tato technologie?
Certifikační autority nebo CA , je zásadní, protože každý uživatel může vytvořit certifikát s vlastním podpisem - stroj se systémem Linux s Open SSL. Symantec a Digicert jsou například dvě známé společnosti CA. Projděme teoretický scénář: How-To Geek chce zůstat přihlášeni v relacích uživatelů soukromých se šifrováním, a proto petice CA jako Symantec s
Požadavek na podepsání certifikátu nebo CSR . Vytvářejí veřejný klíč a soukromý klíč pro šifrování a dešifrování dat odesílaných přes internet. Žádost o CSR odešle veřejný klíč společnosti Symantec spolu s informacemi o webové stránce. Symantec kontroluje klíč proti jeho záznamu, aby ověřil, že všechny údaje nezmění všechny strany, protože každá malá změna dat činí hash radikálně odlišným. Tyto veřejné klíče a digitální certifikáty jsou podepsány hashovými funkcemi, protože výstupy tyto funkce jsou snadno viditelné. Veřejný klíč a certifikát s ověřeným hash od společnosti Symantec (v našem příkladu), autorita, zaručuje uživateli nástroje How-To Geek, že klíč je nezměněn a není odeslán od někoho škodlivého.
Vzhledem k tomu, že hash je snadno monitorovatelný a nemožný (někteří by říkali "obtížné"), aby se obrátil, správný a ověřený hash podpis znamená, že certifikát a připojení mohou být důvěryhodné a data mohou být dohodnuty, aby byly zaslány šifrované od konce do konce . Ale co když haš
nebyl skutečně jedinečný ? Co je kolizní útok a je to možné v reálném světě?
Jedná se o inherentní slabost všech hal, včetně SHA-1. Teoreticky by funkce SHA měla vytvářet jedinečný hash pro všechna data, která jsou do ní vložena, ale jelikož počet hashů roste, je pravděpodobnější, že různé páry dat mohou vytvořit stejný hash. Takže by se dalo vytvořit nedůvěryhodný certifikát se shodným hashem s důvěryhodným certifikátem. Pokud vás nechali nainstalovat tento nedůvěryhodný certifikát, mohli by to být maskovaní jako důvěryhodní a distribuovat škodlivé údaje.
Hledání odpovídajících hashů v rámci dvou souborů se nazývá
útok . Je známo, že se u MD5 hashů již stalo alespoň jedno rozsáhlé útoky na kolizi. Ale 27. února 2017 Google oznámil SHAttered, první crafted srážku pro SHA-1. Společnost Google dokázala vytvořit soubor PDF, který měl stejný SHA-1 hash jako jiný soubor PDF, přestože měl jiný obsah. SHAttered byl proveden v souboru PDF. PDF soubory jsou poměrně volné formáty souborů; mohou se provést spousty drobných změn na úrovni bitů, aniž byste jim zabránili v jejich otevírání nebo způsobení viditelných rozdílů. Dokumenty PDF se také často používají k šíření malwaru. Zatímco SHAttered může pracovat na jiných typech souborů, jako jsou ISO, certifikáty jsou pevně specifikovány, takže je takový útok nepravděpodobný.
Takže jak snadný je tento útok? SHAttered byl založen na metodě, kterou objevil Marc Stevens v roce 2012, který vyžadoval operace SHA-1 ve více než 2 60,3 (9,223 quintillionů) - ohromující číslo. Tato metoda je však stále 100 000krát méně operací, než by bylo nutné k dosažení stejného výsledku s hrubou silou. Společnost Google zjistila, že 110 paralelních grafických karet pracujících na paralelním trhu by trvalo zhruba rok, než došlo ke kolizi. Pronájem tohoto výpočetního času od společnosti Amazon AWS by stálo přibližně 110 000 dolarů. Mějte na paměti, že když ceny klesají na části počítače a získáte větší sílu za méně, útoky jako SHAttered se stávají snazšími.
110 000 dolarů může vypadat hodně, ale je to v oblasti dostupnosti některých organizací - což znamená, že cybervilliáni v reálném životě mohou vytvářet digitální podpisy dokumentů, zasahovat do systémů pro zálohování a správu verzí, jako je Git a SVN, nebo vytvářet škodlivý Linuxový systém ISO legitimní.
Naštěstí existují zmírňující faktory, které takové útoky brání. SHA-1 je zřídkakdy používán pro digitální podpisy. Certifikační autority již neposkytují certifikáty podepsané s SHA-1 a pro ně i Chrome a Firefox upustily od podpory. Distribuce systému Linux se obvykle vydávají častěji než jednou za rok, takže je pro útočníka nepraktické, aby vytvořil škodlivou verzi a poté vygeneroval jeden polstrovaný, aby měl stejný hash SHA-1.
Na druhou stranu, některé útoky založené na SHAttered jsou již se děje v reálném světě. Řídicí systém verzí SVN používá SHA-1 k odlišení souborů. Nahrávání dvou souborů PDF s identickým shlukem SHA-1 do úložiště SVN způsobí jejich poškození.
Jak se mohu chránit před SHA-1 útoky?
Kredity obrázku: Lego Firefox, Spousta Hashů, prosím, neubližujte autorovi web neznámé, Google
Jak povolit ekvalizér pro Spotify na iOS a Android
Ekvalizér (nebo EQ) je filtr, který upravuje hlasitost specifických zvukových frekvencí při poslechu hudby. Některé ekvalizéry zesilují basy, zatímco jiné zesilují basy a zvyšují vysoký konec. Různé nastavení ekvalizéru bude fungovat lépe nebo horší u různých druhů hudby SOUVISEJÍCÍ: Co je ekvalizér a jak to funguje?
Jak zaznamenat makra a automatizovat tíživé úlohy V aplikaci Microsoft Word
Makra jsou základní bity programování, které umožňují stisknout rychlé tlačítko nebo klávesovou zkratku pro spuštění předem zaznamenané akce. Zde je návod, jak snadno učinit v aplikaci Word. Co je to makro? Makro je opravdu jen nahrávání série tlačítek, kliknutí a psaní. Když zaznamenáte makro, stačí záznam zaznamenat, provést kroky, které chcete automatizovat, zastavit nahrávání, nechat Word vytvořit programování pro vás a potom přiřadit makro k tlačítku nebo klávesové zkratky.