SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Michal ŠpačekMichal Špaček www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze
Nejbezpečnější e-shop je ten, který je zavřený. Ale zas moc nevydělává.
Nedávno jsem slyšel něco o tom, že kdosi navrhuje, aby o víkendu obchody
nebyly otevřené, tak třeba jednou dojde i na e-shopy a budou bezpečné aspoň
v sobotu a neděli. Původní slajdy tyto poznámky neobsahují.
V půlce září 2015 zveřejnili lidé z Twista výsledky studie Český košík roku, ve které
testovali Top 120 českých e-shopů. Mimo jiné zjistili, že 15 % e-shopů bylo zcela
zabezpečených pomocí HTTPS a dalších 13 % používalo HTTPS alespoň pro
přihlášení – ale to bohužel nestačí, jak uvidíme dále.
%
1. 4. 2016 jsem měření provedl znovu a na HTTPS běží celých 24 % e-shopů
zařazených do studie Český košík roku 2015, tedy 29 ze 120 obchodů. Nárůst z
15,8 % mě těší, ale pořád je to hodně, hodně, hodně, hodně, hodně, hodně málo.
Kolik e-shopů používá HTTPS alespoň pro ochranu přihlášení jsem nezkoumal.
Jen pro srovnání, Seznam na konci února 2016 zveřejnil statistiky nad vzorkem zhruba 700 000
českých titulních stránek (homepage) a jenom 1,23 % z nich používá HTTPS. To je fakt dost
málo, myslím si, že na HTTPS by měl být každý web, nehledě na to, jestli se k němu přihlašuji.
OVĚŘENÍ
&
ŠIFROVÁNÍ
HTTPS má na starosti dvě věci, ověření protistrany, tedy to, že data posílám tomu,
komu mám, a šifrování přenášených dat. Data tedy nemůže nikdo odposlechnout
ani změnit. Útočník by totiž po cestě ze serveru do prohlížeče návštěvníka mohl
změnit například přihlašovací formulář, aby se zadané jméno a heslo posílalo
někam jinam. Mohl by také vložit přihlašovací formulář někam kde běžně není, ale
uživatel by to nepoznal a přihlašovací údaje vyplnil.
CELÝ WEB
Pokud chcete web na HTTPS, a chtít byste měli, tak ho musíte mít na HTTPS celý,
jinak to není úplně vono. Když budete pomocí HTTPS chránit jen login formulář a z
něj odesílané jméno a heslo, tak pořád někdo může odposlechnout cookies, které
prohlížeč bude posílat na tu nezabezpečenou HTTP část webu. Mizera se pak díky
znalosti tzv. session cookie může za uživatele vydávat, aniž by znal jeho heslo.
NEZABEZPEČÍ
WEB!!!
HTTPS má dva úkoly (pomáhat a chránit), ale nezvládne už nic dalšího. HTTPS
neumí zabezpečit váš web, sorry. Zaručí jen to, že data, která váš web opustí
dojdou v nezměněné podobě do browseru, že do nich nikdo nestrčí reklamu
nebo odkaz na stažení viru a že posílaná nepůjde odposlechnout. To ale stačí.
NEZABEZPEČÍ
LIDI!!!
HTTPS dokonce nezabezpečí ani návštěvníky vašeho webu nebo e-shopu.
Nezaručí, že jim ten web nepošle něco zákeřného, nějaký vir nebo tak něco. HTTPS
zabezpečí jenom přenos dat mezi serverem a prohlížečem a je nutnou, ale ne
postačující podmínkou pro zabezpečení. Jsou i jiné závažné chyby, kterým by se
mělo věnovat trochu více pozornosti. O HTTPS se dozvíte více v mé jiné přednášce.
XSS
Cross Site Scripting
David Ross, Microsoft, 1999
Útok Cross-Site Scripting (XSS) byl poprvé popsán v roce 1999. Funguje na
principu zneužívání důvěry. Návštěvníci věří webům, které používají nebo
navštěvují a mizera této důvěry zneužije a návštěvníkům a jejich prohlížečům
něco nepěkného provede. I po 17 letech je XSS pořád velmi často používán.
XSS spočívá v tom, že útočník do stránky vloží JavaScript, který se poté spustí
návštěvníkovi v prohlížeči. Útok možná budete znát, nejčastěji se demonstruje jako
neškodné vypsání jedničky a vypadá to takto. Jenže XSS není jen alert(1),
pomocí JavaScriptu lze v browseru dělat spoustu věcí, například získávat cookies,
pouštět muziku, zobrazovat přesvědčivé odkazy na stažení zákeřných programů
nebo vytvářet falešné přihlašovací formuláře.
The Browser Exploitation Framework Project Demo
BeEF
Nástroj BeEF usnadňuje bezpečnostním testerům (a přednášejícím) demonstraci
zákeřných XSS útoků. Ukázku naleznete na videu z E-shop summitu 2016 nebo
v mojí prezentaci určené vývojářům, přibližně od 14. minuty.
CSP
Content Security Policy
Vývojáři zapomínají ošetřit uživatelský vstup už skoro 20 let a budou zapomínat
pořád dál. Je tedy potřeba zavést další úroveň ochrany, když vývojáři zase
zapomenou, tak ať nevyrobí tak velký problém. Jednou z těch dalších úrovní
ochrany je Content Security Policy (CSP). Ta říká moderním browserům, odkud z
jakých domén mohou načítat a spouštět JavaScript, stahovat obrázky, kam
mohou odesílat formuláře apod. Některé nástroje, jako třeba Google Tag Manager
vyžadují poměrně „otevřené“ nastavení CSP, ale politika může být nastavena na
každou část e-shopu jinak. Např. v administraci e-shopu nejspíš nástroje jako je
právě Google Tag Manager nepoužíváte, pomocí CSP tedy můžete chránit
uživatele, kteří s ní pracují.
CSP je klasická HTTP hlavička, kterou pošle server prohlížeči a prohlížeč poté
načítá zdroje jen z povolených adres. Mohu například nastavit, aby prohlížeč načítal
JavaScript jen z domény, na které běží aplikace a když mizera do stránky dostane
nějaký JavaScript odjinud, tak se nenačte a tím pádem ani nespustí. O implementaci
Content Security Policy se dozvíte více v mé přednášce pro vývojáře.
Michal ŠpačekMichal Špaček
www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze
Útok XSS se nevyhýbá nikomu a může natropit opravdu velké škody. Myslete na to
a snažte se mizerům bránit více způsoby. Vaše weby potom budou mnohem hůře
zneužitelné pro páchání útoků na vaše uživatele, kolegy a zaměstnance.
Bezpečnost e-shopů jsme detailněji rozebírali v rozhovoru pro MladýPodnikatel.cz.

Weitere ähnliche Inhalte

Was ist angesagt?

Jak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webuJak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webuMichal Špaček
 
WebTop100 Technické chyby, výkon a bezpečnost
WebTop100 Technické chyby, výkon a bezpečnostWebTop100 Technické chyby, výkon a bezpečnost
WebTop100 Technické chyby, výkon a bezpečnostMichal Špaček
 
Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)
Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)
Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)Michal Špaček
 
Základy webové bezpečnosti pro PR a marketing
Základy webové bezpečnosti pro PR a marketingZáklady webové bezpečnosti pro PR a marketing
Základy webové bezpečnosti pro PR a marketingMichal Špaček
 
Víceúrovňová obrana vysvětlená na Cross-Site Scriptingu
Víceúrovňová obrana vysvětlená na Cross-Site ScriptinguVíceúrovňová obrana vysvětlená na Cross-Site Scriptingu
Víceúrovňová obrana vysvětlená na Cross-Site ScriptinguMichal Špaček
 
Password manažeři detailněji – 1Password, LastPass, 2FA, sdílení
Password manažeři detailněji – 1Password, LastPass, 2FA, sdíleníPassword manažeři detailněji – 1Password, LastPass, 2FA, sdílení
Password manažeři detailněji – 1Password, LastPass, 2FA, sdíleníMichal Špaček
 
Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)
Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)
Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)Michal Špaček
 
HTTPS zdarma a pro všechny - LinuxDays 2015
HTTPS zdarma a pro všechny - LinuxDays 2015HTTPS zdarma a pro všechny - LinuxDays 2015
HTTPS zdarma a pro všechny - LinuxDays 2015tomashala
 
Kolik webových útoků znáš...
Kolik webových útoků znáš...Kolik webových útoků znáš...
Kolik webových útoků znáš...Michal Špaček
 
Lámání a ukládání hesel
Lámání a ukládání heselLámání a ukládání hesel
Lámání a ukládání heselMichal Špaček
 
Bezpečnostní útoky na webové aplikace
Bezpečnostní útoky na webové aplikaceBezpečnostní útoky na webové aplikace
Bezpečnostní útoky na webové aplikaceMichal Špaček
 
Website Security & WordPress (Peter Gramantik)
Website Security & WordPress (Peter Gramantik)Website Security & WordPress (Peter Gramantik)
Website Security & WordPress (Peter Gramantik)wcsk
 
Nejčastejší problémy WordPress webů
Nejčastejší problémy WordPress webůNejčastejší problémy WordPress webů
Nejčastejší problémy WordPress webůVladimír Smitka
 
Jak si (ne)nechat hacknout Wordpress stránky
Jak si (ne)nechat hacknout Wordpress stránkyJak si (ne)nechat hacknout Wordpress stránky
Jak si (ne)nechat hacknout Wordpress stránkyVladimír Smitka
 
Wordpress_DOD
Wordpress_DODWordpress_DOD
Wordpress_DODDoubry99
 

Was ist angesagt? (20)

Zabezpečení Slevomatu
Zabezpečení SlevomatuZabezpečení Slevomatu
Zabezpečení Slevomatu
 
Medvědí služba
Medvědí službaMedvědí služba
Medvědí služba
 
Jak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webuJak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webu
 
Hashování hesel
Hashování heselHashování hesel
Hashování hesel
 
WebTop100 Technické chyby, výkon a bezpečnost
WebTop100 Technické chyby, výkon a bezpečnostWebTop100 Technické chyby, výkon a bezpečnost
WebTop100 Technické chyby, výkon a bezpečnost
 
Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)
Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)
Víte, že nevíte, že já vím, že nevíte? (WebTop100 2014)
 
Základy webové bezpečnosti pro PR a marketing
Základy webové bezpečnosti pro PR a marketingZáklady webové bezpečnosti pro PR a marketing
Základy webové bezpečnosti pro PR a marketing
 
Víceúrovňová obrana vysvětlená na Cross-Site Scriptingu
Víceúrovňová obrana vysvětlená na Cross-Site ScriptinguVíceúrovňová obrana vysvětlená na Cross-Site Scriptingu
Víceúrovňová obrana vysvětlená na Cross-Site Scriptingu
 
Password manažeři detailněji – 1Password, LastPass, 2FA, sdílení
Password manažeři detailněji – 1Password, LastPass, 2FA, sdíleníPassword manažeři detailněji – 1Password, LastPass, 2FA, sdílení
Password manažeři detailněji – 1Password, LastPass, 2FA, sdílení
 
Hlava není na hesla
Hlava není na heslaHlava není na hesla
Hlava není na hesla
 
Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)
Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)
Minulé století volalo (Cross-Site Scripting + BeEF + CSP demo)
 
HTTPS zdarma a pro všechny - LinuxDays 2015
HTTPS zdarma a pro všechny - LinuxDays 2015HTTPS zdarma a pro všechny - LinuxDays 2015
HTTPS zdarma a pro všechny - LinuxDays 2015
 
Zapomeňte vaše hesla
Zapomeňte vaše heslaZapomeňte vaše hesla
Zapomeňte vaše hesla
 
Kolik webových útoků znáš...
Kolik webových útoků znáš...Kolik webových útoků znáš...
Kolik webových útoků znáš...
 
Lámání a ukládání hesel
Lámání a ukládání heselLámání a ukládání hesel
Lámání a ukládání hesel
 
Bezpečnostní útoky na webové aplikace
Bezpečnostní útoky na webové aplikaceBezpečnostní útoky na webové aplikace
Bezpečnostní útoky na webové aplikace
 
Website Security & WordPress (Peter Gramantik)
Website Security & WordPress (Peter Gramantik)Website Security & WordPress (Peter Gramantik)
Website Security & WordPress (Peter Gramantik)
 
Nejčastejší problémy WordPress webů
Nejčastejší problémy WordPress webůNejčastejší problémy WordPress webů
Nejčastejší problémy WordPress webů
 
Jak si (ne)nechat hacknout Wordpress stránky
Jak si (ne)nechat hacknout Wordpress stránkyJak si (ne)nechat hacknout Wordpress stránky
Jak si (ne)nechat hacknout Wordpress stránky
 
Wordpress_DOD
Wordpress_DODWordpress_DOD
Wordpress_DOD
 

Ähnlich wie Bezpečnost e-shopů (HTTPS, XSS, CSP)

Rockaway AWS Hackaton – Kick-off Meeting Brno
Rockaway AWS Hackaton – Kick-off Meeting BrnoRockaway AWS Hackaton – Kick-off Meeting Brno
Rockaway AWS Hackaton – Kick-off Meeting BrnoRockawayCapital
 
Bezpečnost WordPress pro začátečníky
Bezpečnost WordPress pro začátečníkyBezpečnost WordPress pro začátečníky
Bezpečnost WordPress pro začátečníkyVladimír Smitka
 
WordCamp Praha 2016 - Bezpečnost WordPress
WordCamp Praha 2016 - Bezpečnost WordPressWordCamp Praha 2016 - Bezpečnost WordPress
WordCamp Praha 2016 - Bezpečnost WordPressVladimír Smitka
 
Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....
Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....
Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....Sun Marketing
 
Boty v použitelnosti
Boty v použitelnostiBoty v použitelnosti
Boty v použitelnostiSherpas
 
Rockaway AWS Hackaton – Kick-off Meeting
Rockaway AWS Hackaton – Kick-off MeetingRockaway AWS Hackaton – Kick-off Meeting
Rockaway AWS Hackaton – Kick-off MeetingRockawayCapital
 
Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...
Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...
Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...Sherpas
 
Rockaway Azure Hackathon 2016 – Kickoff Meeting prezetnace
Rockaway Azure Hackathon 2016 – Kickoff Meeting prezetnaceRockaway Azure Hackathon 2016 – Kickoff Meeting prezetnace
Rockaway Azure Hackathon 2016 – Kickoff Meeting prezetnaceRockawayCapital
 
Wired-in: Marketing v dobe internetu
Wired-in: Marketing v dobe internetuWired-in: Marketing v dobe internetu
Wired-in: Marketing v dobe internetuPavel Šíma
 
KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)
KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)
KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)Michal ZOBEC
 
Prezentace projektu KryptoBanking.com
Prezentace projektu KryptoBanking.comPrezentace projektu KryptoBanking.com
Prezentace projektu KryptoBanking.comLukáš Kruntorád
 

Ähnlich wie Bezpečnost e-shopů (HTTPS, XSS, CSP) (13)

Rockaway AWS Hackaton – Kick-off Meeting Brno
Rockaway AWS Hackaton – Kick-off Meeting BrnoRockaway AWS Hackaton – Kick-off Meeting Brno
Rockaway AWS Hackaton – Kick-off Meeting Brno
 
Bezpečnost WordPress pro začátečníky
Bezpečnost WordPress pro začátečníkyBezpečnost WordPress pro začátečníky
Bezpečnost WordPress pro začátečníky
 
WordCamp Praha 2016 - Bezpečnost WordPress
WordCamp Praha 2016 - Bezpečnost WordPressWordCamp Praha 2016 - Bezpečnost WordPress
WordCamp Praha 2016 - Bezpečnost WordPress
 
Vojtěch Foukal - SEO 3x jinak
Vojtěch Foukal - SEO 3x jinakVojtěch Foukal - SEO 3x jinak
Vojtěch Foukal - SEO 3x jinak
 
Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....
Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....
Click it - Jak a co měřit pomocí nástroje Google Analytics - workshop 22. 10....
 
Boty v použitelnosti
Boty v použitelnostiBoty v použitelnosti
Boty v použitelnosti
 
Rockaway AWS Hackaton – Kick-off Meeting
Rockaway AWS Hackaton – Kick-off MeetingRockaway AWS Hackaton – Kick-off Meeting
Rockaway AWS Hackaton – Kick-off Meeting
 
SiUX
SiUXSiUX
SiUX
 
Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...
Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...
Ochutnávka studie WebTop100: Srovnání kvality českých webů a dalších digitáln...
 
Rockaway Azure Hackathon 2016 – Kickoff Meeting prezetnace
Rockaway Azure Hackathon 2016 – Kickoff Meeting prezetnaceRockaway Azure Hackathon 2016 – Kickoff Meeting prezetnace
Rockaway Azure Hackathon 2016 – Kickoff Meeting prezetnace
 
Wired-in: Marketing v dobe internetu
Wired-in: Marketing v dobe internetuWired-in: Marketing v dobe internetu
Wired-in: Marketing v dobe internetu
 
KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)
KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)
KeePass: Využití ve firmách a KeePass Enterprise (čtvrtek, 28.7.2022)
 
Prezentace projektu KryptoBanking.com
Prezentace projektu KryptoBanking.comPrezentace projektu KryptoBanking.com
Prezentace projektu KryptoBanking.com
 

Mehr von Michal Špaček

Fantom Opery, "VPN" a Secure Proxy v Opeře
Fantom Opery, "VPN" a Secure Proxy v OpeřeFantom Opery, "VPN" a Secure Proxy v Opeře
Fantom Opery, "VPN" a Secure Proxy v OpeřeMichal Špaček
 
Quality of Life, Multiple Lines of Defense
Quality of Life, Multiple Lines of DefenseQuality of Life, Multiple Lines of Defense
Quality of Life, Multiple Lines of DefenseMichal Špaček
 
Disclosing password hashing policies
Disclosing password hashing policiesDisclosing password hashing policies
Disclosing password hashing policiesMichal Špaček
 
Operations security (OPSEC) in IT
Operations security (OPSEC) in ITOperations security (OPSEC) in IT
Operations security (OPSEC) in ITMichal Špaček
 
HTTP Strict Transport Security (HSTS), English version
HTTP Strict Transport Security (HSTS), English versionHTTP Strict Transport Security (HSTS), English version
HTTP Strict Transport Security (HSTS), English versionMichal Špaček
 
I forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and whyI forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and whyMichal Špaček
 
The problem with the real world
The problem with the real worldThe problem with the real world
The problem with the real worldMichal Špaček
 
Defense in Depth Web Inkognito 12/2013
Defense in Depth Web Inkognito 12/2013Defense in Depth Web Inkognito 12/2013
Defense in Depth Web Inkognito 12/2013Michal Špaček
 
Bezpečnost webových aplikací Web Inkognito VŠE 05/2013
Bezpečnost webových aplikací Web Inkognito VŠE 05/2013Bezpečnost webových aplikací Web Inkognito VŠE 05/2013
Bezpečnost webových aplikací Web Inkognito VŠE 05/2013Michal Špaček
 

Mehr von Michal Špaček (10)

Fantom Opery, "VPN" a Secure Proxy v Opeře
Fantom Opery, "VPN" a Secure Proxy v OpeřeFantom Opery, "VPN" a Secure Proxy v Opeře
Fantom Opery, "VPN" a Secure Proxy v Opeře
 
Quality of Life, Multiple Lines of Defense
Quality of Life, Multiple Lines of DefenseQuality of Life, Multiple Lines of Defense
Quality of Life, Multiple Lines of Defense
 
Disclosing password hashing policies
Disclosing password hashing policiesDisclosing password hashing policies
Disclosing password hashing policies
 
Operations security (OPSEC) in IT
Operations security (OPSEC) in ITOperations security (OPSEC) in IT
Operations security (OPSEC) in IT
 
HTTP Strict Transport Security (HSTS), English version
HTTP Strict Transport Security (HSTS), English versionHTTP Strict Transport Security (HSTS), English version
HTTP Strict Transport Security (HSTS), English version
 
I forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and whyI forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and why
 
HTTP/2
HTTP/2HTTP/2
HTTP/2
 
The problem with the real world
The problem with the real worldThe problem with the real world
The problem with the real world
 
Defense in Depth Web Inkognito 12/2013
Defense in Depth Web Inkognito 12/2013Defense in Depth Web Inkognito 12/2013
Defense in Depth Web Inkognito 12/2013
 
Bezpečnost webových aplikací Web Inkognito VŠE 05/2013
Bezpečnost webových aplikací Web Inkognito VŠE 05/2013Bezpečnost webových aplikací Web Inkognito VŠE 05/2013
Bezpečnost webových aplikací Web Inkognito VŠE 05/2013
 

Bezpečnost e-shopů (HTTPS, XSS, CSP)

  • 1. Michal ŠpačekMichal Špaček www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze Nejbezpečnější e-shop je ten, který je zavřený. Ale zas moc nevydělává. Nedávno jsem slyšel něco o tom, že kdosi navrhuje, aby o víkendu obchody nebyly otevřené, tak třeba jednou dojde i na e-shopy a budou bezpečné aspoň v sobotu a neděli. Původní slajdy tyto poznámky neobsahují.
  • 2. V půlce září 2015 zveřejnili lidé z Twista výsledky studie Český košík roku, ve které testovali Top 120 českých e-shopů. Mimo jiné zjistili, že 15 % e-shopů bylo zcela zabezpečených pomocí HTTPS a dalších 13 % používalo HTTPS alespoň pro přihlášení – ale to bohužel nestačí, jak uvidíme dále.
  • 3. % 1. 4. 2016 jsem měření provedl znovu a na HTTPS běží celých 24 % e-shopů zařazených do studie Český košík roku 2015, tedy 29 ze 120 obchodů. Nárůst z 15,8 % mě těší, ale pořád je to hodně, hodně, hodně, hodně, hodně, hodně málo. Kolik e-shopů používá HTTPS alespoň pro ochranu přihlášení jsem nezkoumal.
  • 4. Jen pro srovnání, Seznam na konci února 2016 zveřejnil statistiky nad vzorkem zhruba 700 000 českých titulních stránek (homepage) a jenom 1,23 % z nich používá HTTPS. To je fakt dost málo, myslím si, že na HTTPS by měl být každý web, nehledě na to, jestli se k němu přihlašuji.
  • 5. OVĚŘENÍ & ŠIFROVÁNÍ HTTPS má na starosti dvě věci, ověření protistrany, tedy to, že data posílám tomu, komu mám, a šifrování přenášených dat. Data tedy nemůže nikdo odposlechnout ani změnit. Útočník by totiž po cestě ze serveru do prohlížeče návštěvníka mohl změnit například přihlašovací formulář, aby se zadané jméno a heslo posílalo někam jinam. Mohl by také vložit přihlašovací formulář někam kde běžně není, ale uživatel by to nepoznal a přihlašovací údaje vyplnil.
  • 6. CELÝ WEB Pokud chcete web na HTTPS, a chtít byste měli, tak ho musíte mít na HTTPS celý, jinak to není úplně vono. Když budete pomocí HTTPS chránit jen login formulář a z něj odesílané jméno a heslo, tak pořád někdo může odposlechnout cookies, které prohlížeč bude posílat na tu nezabezpečenou HTTP část webu. Mizera se pak díky znalosti tzv. session cookie může za uživatele vydávat, aniž by znal jeho heslo.
  • 7. NEZABEZPEČÍ WEB!!! HTTPS má dva úkoly (pomáhat a chránit), ale nezvládne už nic dalšího. HTTPS neumí zabezpečit váš web, sorry. Zaručí jen to, že data, která váš web opustí dojdou v nezměněné podobě do browseru, že do nich nikdo nestrčí reklamu nebo odkaz na stažení viru a že posílaná nepůjde odposlechnout. To ale stačí.
  • 8. NEZABEZPEČÍ LIDI!!! HTTPS dokonce nezabezpečí ani návštěvníky vašeho webu nebo e-shopu. Nezaručí, že jim ten web nepošle něco zákeřného, nějaký vir nebo tak něco. HTTPS zabezpečí jenom přenos dat mezi serverem a prohlížečem a je nutnou, ale ne postačující podmínkou pro zabezpečení. Jsou i jiné závažné chyby, kterým by se mělo věnovat trochu více pozornosti. O HTTPS se dozvíte více v mé jiné přednášce.
  • 9. XSS Cross Site Scripting David Ross, Microsoft, 1999 Útok Cross-Site Scripting (XSS) byl poprvé popsán v roce 1999. Funguje na principu zneužívání důvěry. Návštěvníci věří webům, které používají nebo navštěvují a mizera této důvěry zneužije a návštěvníkům a jejich prohlížečům něco nepěkného provede. I po 17 letech je XSS pořád velmi často používán.
  • 10. XSS spočívá v tom, že útočník do stránky vloží JavaScript, který se poté spustí návštěvníkovi v prohlížeči. Útok možná budete znát, nejčastěji se demonstruje jako neškodné vypsání jedničky a vypadá to takto. Jenže XSS není jen alert(1), pomocí JavaScriptu lze v browseru dělat spoustu věcí, například získávat cookies, pouštět muziku, zobrazovat přesvědčivé odkazy na stažení zákeřných programů nebo vytvářet falešné přihlašovací formuláře.
  • 11. The Browser Exploitation Framework Project Demo BeEF Nástroj BeEF usnadňuje bezpečnostním testerům (a přednášejícím) demonstraci zákeřných XSS útoků. Ukázku naleznete na videu z E-shop summitu 2016 nebo v mojí prezentaci určené vývojářům, přibližně od 14. minuty.
  • 12. CSP Content Security Policy Vývojáři zapomínají ošetřit uživatelský vstup už skoro 20 let a budou zapomínat pořád dál. Je tedy potřeba zavést další úroveň ochrany, když vývojáři zase zapomenou, tak ať nevyrobí tak velký problém. Jednou z těch dalších úrovní ochrany je Content Security Policy (CSP). Ta říká moderním browserům, odkud z jakých domén mohou načítat a spouštět JavaScript, stahovat obrázky, kam mohou odesílat formuláře apod. Některé nástroje, jako třeba Google Tag Manager vyžadují poměrně „otevřené“ nastavení CSP, ale politika může být nastavena na každou část e-shopu jinak. Např. v administraci e-shopu nejspíš nástroje jako je právě Google Tag Manager nepoužíváte, pomocí CSP tedy můžete chránit uživatele, kteří s ní pracují.
  • 13. CSP je klasická HTTP hlavička, kterou pošle server prohlížeči a prohlížeč poté načítá zdroje jen z povolených adres. Mohu například nastavit, aby prohlížeč načítal JavaScript jen z domény, na které běží aplikace a když mizera do stránky dostane nějaký JavaScript odjinud, tak se nenačte a tím pádem ani nespustí. O implementaci Content Security Policy se dozvíte více v mé přednášce pro vývojáře.
  • 14. Michal ŠpačekMichal Špaček www.michalspacek.czwww.michalspacek.cz @spazef0rze@spazef0rze Útok XSS se nevyhýbá nikomu a může natropit opravdu velké škody. Myslete na to a snažte se mizerům bránit více způsoby. Vaše weby potom budou mnohem hůře zneužitelné pro páchání útoků na vaše uživatele, kolegy a zaměstnance. Bezpečnost e-shopů jsme detailněji rozebírali v rozhovoru pro MladýPodnikatel.cz.