Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
HTTP Strict Transport Security
Michal Špaček
www.michalspacek.cz @spazef0rze
https://commons.wikimedia.org/wiki/File:Kozov...
Při přípravě přednášky jsem narazil na tenhle nejmenovaný web.
Všimněte si té věty nahoře. Na dalším slajdu je zvětšená.
HTML verze NULA
Tomuhle se říká HTML verze nula. To je HTML bez HT.
http://www.mojedatovaschranka.cz/
Uvedenou adresu jsem tedy zkusil zadat do prohlížeče. Jako každý normální
člověk jsem př...
http://www.mojedatovaschranka.cz/
Browser protokol doplnil za mě. Doplnil sice jenom http://, ne https://,
ale to nevadí, ...
LOLWUT?
Super
Hmm
OK
Do Not Perform Redirects from
Non-TLS Page to TLS Login Page
Ten vynález asi pochází ze zastaralého doporučení OWASPu, kte...
This recommendation has been
removed.
Ale tohle doporučení už bylo 16. října 2011 odstraněno.
Nicméně i kdyby nebylo odstraněno, tak v doporučení se píše, že se nemá
přesměrovávat. Jenže datové schránky návštěvníka n...
Tato gramatická chyba je taková symbolická třešnička na tom zkaženém dortu.
Browser
Mizera
Server
HTTP HTTPS
SSL STRIP
Radou k vytvoření záložky se snaží řešit tento problém. Říká se tomu útok SSL S...
Řešit to doporučením vytvořit záložku nebo nepřesměrováváním je hloupé.
Správně je to udělat pomocí HTTP Strict Transport ...
HSTS zajistí, že browser vůbec nebude posílat požadavek na HTTP, ale místo toho
vygeneruje interní přesměrování a rovnou p...
Strict-Transport-Security: max-age=31536000; includeSubDomains
HSTS je HTTP hlavička, kterou posílá server. Browser poté b...
TOFU
Trust-On-First-Use
HSTS hlavička může přijít jen po HTTPS, jinak ji browsery musí ignorovat. Musíme
tedy věřit, že př...
https://www.chromium.org/hsts
PRELOAD
Abychom se nemuseli obávat ani toho prvního požadavku, tak můžeme využít tzv.
preloa...
Strict-Transport-Security: max-age=…; includeSubDomains; preload
https://hstspreload.appspot.com/
Abyste se dostali do pre...
max-age=60
bez preload
Proto pro testování nastavte malý počet vteřin, třeba jen pár minut a nepoužívejte
preload. Fakt, n...
~2000 domén
35 .cz domén
V preload listu z 11. 4. 2015 je necelých 2000 domén, z toho 35 českých, včetně
Slevomatu, Mallu ...
ŽádnáŽádná
bankabanka
V preload listu není žádná česká banka. V ČR je 60 bank, spořitelen a záložen, z
toho 10 jich použív...
„Veškerá komunikace probíhá
šifrovaně pomocí stejného
systému, který používají banky.“
– fakturoid.cz
Proto jsou docela vt...
HSTS má ještě jeden důležitý úkol. Když dojde k nějaké chybě při připojování k
zabezpečenému webu, tak uživateli nedovolí ...
Michal ŠpačekMichal Špaček
www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze
Mimochodem, nainstalujte si do br...
Nächste SlideShare
Wird geladen in …5
×

HTTP Strict Transport Security (HSTS)

5.198 Aufrufe

Veröffentlicht am

HTTP Strict Transport Security (HSTS), zajistí zabezpečený „převoz“ informací bez možnosti odstranění HTTPS (SSL Strip). HSTS je HTTP hlavička, kterou posílá server. Browser poté bude po X sekund interně přesměrovávat http:// na https://.

Veröffentlicht in: Internet
  • Dating direct: ❶❶❶ http://bit.ly/2ZDZFYj ❶❶❶
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Dating for everyone is here: ❶❶❶ http://bit.ly/2ZDZFYj ❶❶❶
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

HTTP Strict Transport Security (HSTS)

  1. 1. HTTP Strict Transport Security Michal Špaček www.michalspacek.cz @spazef0rze https://commons.wikimedia.org/wiki/File:Kozovazy,_Muzeum_socialistick%C3%BDch_voz%C5%AF_(13).jpg HTTP Strict Transport Security (HSTS) zajistí zabezpečený „převoz“ informací bez možnosti odstranění HTTPS. (Tyto slajdy obsahují moje poznámky nejen pro ty, kteří na přednášce nebyli.)
  2. 2. Při přípravě přednášky jsem narazil na tenhle nejmenovaný web. Všimněte si té věty nahoře. Na dalším slajdu je zvětšená.
  3. 3. HTML verze NULA Tomuhle se říká HTML verze nula. To je HTML bez HT.
  4. 4. http://www.mojedatovaschranka.cz/ Uvedenou adresu jsem tedy zkusil zadat do prohlížeče. Jako každý normální člověk jsem při zadávání to https:// na začátku zapomněl napsat.
  5. 5. http://www.mojedatovaschranka.cz/ Browser protokol doplnil za mě. Doplnil sice jenom http://, ne https://, ale to nevadí, určitě se dostanu tam, kam chci, web mě nejspíš přesměruje.
  6. 6. LOLWUT?
  7. 7. Super Hmm OK
  8. 8. Do Not Perform Redirects from Non-TLS Page to TLS Login Page Ten vynález asi pochází ze zastaralého doporučení OWASPu, které říká, že přihlašovací stránku nemáte přesměrovávat z HTTP na HTTPS.
  9. 9. This recommendation has been removed. Ale tohle doporučení už bylo 16. října 2011 odstraněno.
  10. 10. Nicméně i kdyby nebylo odstraněno, tak v doporučení se píše, že se nemá přesměrovávat. Jenže datové schránky návštěvníka nakonec přesměrují.
  11. 11. Tato gramatická chyba je taková symbolická třešnička na tom zkaženém dortu.
  12. 12. Browser Mizera Server HTTP HTTPS SSL STRIP Radou k vytvoření záložky se snaží řešit tento problém. Říká se tomu útok SSL Strip a je to typ útoku Man-in-the-Middle. Uživatel chce načíst nějaký web, do prohlížeče napíše adresu www.example.com bez https://, jeho prohlížeč pošle nešifrovaný požadavek na server, ten odpoví přesměrováním na https://www.example.com. Ten úvodní požadavek může zachytit mizera, na server ho přepošle, server tedy odpoví přesměrováním jemu. To přesměrování ale mizera nevrátí prohlížeči, ale místo toho pošle HTTPS požadavek na server sám. Server dostal požadavek po HTTPS a je spokojený, takže mizerovi pošle šifrovanou stránku. Mizera ji přijme, rozšifruje, změní všechny odkazy a formuláře z https:// na http:// a pošle prohlížeči. Uživatel vidí stránku, kterou chtěl, doména také souhlasí. Jen si nevšimne, že stránka není na HTTPS, možná totiž ani neví, že má být, napíše jméno a heslo a browser ho nešifrovaně odešle na server, mizera nešifrované spojení odposlechne a získá přihlašovací údaje. Ukázku útoku najdete na YouTube.
  13. 13. Řešit to doporučením vytvořit záložku nebo nepřesměrováváním je hloupé. Správně je to udělat pomocí HTTP Strict Transport Security (HSTS). HSTS umí Firefox i Chrome od verze 4, IE od verze Superman/12. (Aktualizace: IE 11 podporuje HSTS na Windows 7 a výše od počátku června 2015.) H TSH TS
  14. 14. HSTS zajistí, že browser vůbec nebude posílat požadavek na HTTP, ale místo toho vygeneruje interní přesměrování a rovnou půjde na HTTPS. Takto to vypadá v Chrome. Podívejte se třeba na můj web, ten HSTS používá, rozdíl běžně nepoznáte.
  15. 15. Strict-Transport-Security: max-age=31536000; includeSubDomains HSTS je HTTP hlavička, kterou posílá server. Browser poté bude interně přesměrovávat http:// na https:// po X sekund, podle nastavení direktivy max-age. Direktiva includeSubdomains říká, že HSTS má platit i pro všechny subdomény. Nezapomeňte tuto hlavičku nastavovat i pro doménu example.com, nejenom pro www.example.com.
  16. 16. TOFU Trust-On-First-Use HSTS hlavička může přijít jen po HTTPS, jinak ji browsery musí ignorovat. Musíme tedy věřit, že přesměrování z odpovědi na první požadavek zaslaný po HTTP nikdo nestripne. Tomuto modelu se říká Trust-On-First-Use.
  17. 17. https://www.chromium.org/hsts PRELOAD Abychom se nemuseli obávat ani toho prvního požadavku, tak můžeme využít tzv. preload list. Dodává se s prohlížečem při instalaci a zajistí, že prohlížeč už bude od začátku vědět, že váš web je na HTTPS a rovnou tam bude posílat požadavky.
  18. 18. Strict-Transport-Security: max-age=…; includeSubDomains; preload https://hstspreload.appspot.com/ Abyste se dostali do preload listu, tak musíte k HSTS hlavičce přidat direktivu preload a o přidání webu ručně požádat. Tento preload list používá Chrome, Firefox a bude ho používat i IE. Ale jakmile tam jednou web dostanete, tak není rychlé cesty zpět, pozor na to. O odstranění ze seznamu sice můžete požádat, ale nějakou dobu to bude trvat.
  19. 19. max-age=60 bez preload Proto pro testování nastavte malý počet vteřin, třeba jen pár minut a nepoužívejte preload. Fakt, nedělejte to. Jinak si z vás někdo vystřelí a požádá o přidání na seznam za vás.
  20. 20. ~2000 domén 35 .cz domén V preload listu z 11. 4. 2015 je necelých 2000 domén, z toho 35 českých, včetně Slevomatu, Mallu a Alzy. Těžko říct, jak se to bude řešit, až ten seznam trochu nabobtná, ale zatím moc místa nezabírá a pár let to ještě vydrží. Váš web se po zařazení na seznam dostane do prohlížeče s některou z jeho dalších verzí.
  21. 21. ŽádnáŽádná bankabanka V preload listu není žádná česká banka. V ČR je 60 bank, spořitelen a záložen, z toho 10 jich používá HSTS v bankovnictví a 3 i na normálním webu. Ale v preload listu není žádná.
  22. 22. „Veškerá komunikace probíhá šifrovaně pomocí stejného systému, který používají banky.“ – fakturoid.cz Proto jsou docela vtipná tvrzení podobná tomuto od Fakturoidu. Žádná banka totiž nemá HTTPS udělané tak dobře, jako Fakturoid. Raději tedy přestaňte tyhle hlouposti tvrdit a prostě to udělejte dobře. Tedy jinak, než většina bank.
  23. 23. HSTS má ještě jeden důležitý úkol. Když dojde k nějaké chybě při připojování k zabezpečenému webu, tak uživateli nedovolí pokračovat. Tady je ukázka připojení, kdy útočník podvrhnul certifikát vydaný neznámou certifikační autoritou. Web vpravo podporuje HSTS a nedovolí uživateli web načíst, tlačítko Pokračuj chybí.
  24. 24. Michal ŠpačekMichal Špaček www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze Mimochodem, nainstalujte si do browseru toto rozšíření, díky němu se vám po HTTPS budou načítat i weby, které ho defaultně nenabízí, třeba Wikipedia. Je to takové lokální HSTS. (Aktualizace: Wikipedia se načítá od června 2015 pouze na HTTPS a to včetně HSTS, ale toto rozšíření si přesto nainstalujte, weby si do něj můžete přidávat také ručně.)

×