Bezpečnost hesel

Jak získat heslo jiného uživatele eduroam? To je otázka, kterou řešíme v tomto článku, neboť slabé hašování uložených hesel není jediným problémem bezpečnosti hesel v eduroam.

Následující diagram znázorňuje 11 různých způsobů, jak získat cizí heslo do eduroam.

Jednotlivé varianty podrobněji rozebereme.

  1. Nastavení hesla, stanice uživatele
  2. Nastavení hesla, odchycení na síti
  3. Nastavení hesla, odchycení na eduroam.vse.cz
  4. Odchycení při přenosu mezi servery
  5. Zcizení z databáze
  6. Autentizační servery (RADIUS)
  7. Přihlášování – odchycení na síti
  8. Zcizení ze zařízení uživatele
  9. Hádání hesla
  10. Podvržený přístupový bod a autentizační server
  11. Získání od uživatele, útoky na uživatele

1. Nastavení hesla, stanice uživatele

Popis

Při nastavování či změně hesla zadáváte toto nové heslo ze svého zařízení – z počítače, z mobilu. Heslo můžete nastavovat i na cizích počítačích – na počítačových učebnách, na počítači rodičů.

Bezpečnostní hrozby
  • někdo může sledovat Vaši klávesnici či obrazovku a takto zjistit Vaše heslo
  • počítač může být zavirován, může být nainstalován keylogger – útočník takto může získat zadávané heslo
  • zadáváte heslo na podvodné stránce – obvykle je to součást phishingového útoku
Možnosti ochrany

Opatření proti těmto rizikům jsou na bedrech uživatele.

  • Při nastavování hesla buďte obezřetní, zkontrolujte si, zda Vás někdo úmyslně nepozoruje.
  • Svá zařízení udržujte bezpečná – pravidelně aktualizovaný operační systém i další programy, antivirový program, neinstalujte aplikace z různých pokoutních míst.
  • Při nastavování hesla si v adresní řádce prohlížeče zkontrolujte, že jste na serveru eduroam.vse.cz.
Poznámky

Při nastavování hesla pro eduroam uživatel zadává i heslo do školní sítě. I toto heslo může útočník zcizit, ale není to předmětem této analýzy.

Je možné přenést část opatření na správce eduroam, např. že by se heslo do eduroam mohlo nastavit pouze na školních počítačích. Ale přínos v bezpečnosti je výrazně menší než zhoršení použitelnosti služby pro uživatele.

2. Nastavení hesla, odchycení na síti

Popis

Nové heslo zadáváte na webu eduroam.vse.cz. Komunikace mezi Vašim zařízením a serverem eduroam je v zašifrovaném kanálu (TLS, https), uvnitř se heslo přenáší nešifrovaně.

Bezpečnostní hrozby
  • Nedostatečná úroveň zašifrování TLS spojení. Útočník se může aktivně snažit ovlivnit parametry spojení (např. horší šifry). Útočník může ukládat zašifrované spojení a doufat, že v budoucnu získá privátní klíče (tzv. Forward Secrecy).
  • Útok man-in-the-middle (MitM). Útočník se snaží odposlouchávat komunikaci mezi zařízením a serverem eduroam.vse.cz tak, že se stane aktivní prostředníkem (komunikace jde přes něho). Pro tyto útoky existují nástroje – SSLstrip, BetterCap a další.
Možnosti ochrany

Většinu opatření zajišťuje správce serveru eduroam.vse.cz, na ochraně proti útoku MitM se podílí i uživatel.

  • Na serveru eduroam.vse.cz jsou nastaveny bezpečnostní parametry dle doporučení Intermedia compatibility, což zajišťuje dostatečnou bezpečnost s ohledem na starší zařízení. V testu na SSLlabs má eduroam.vse.cz hodnocení A+. Není možný „Donwgrade attack“, se slabými šiframi se klient nepřihlásí. Naprostá většina klientů se připojí s Forward secrecy bezpečnými algoritmy.
  • Základní ochranu proti sofistikovanějším útokům Man in the Middle zajišťuje hlavička HTTP Strict Transport Security (HSTS), která je na eduroam.vse.cz. Většina moderních prohlížečů této hlavičce rozumí. Útočník má dvě základní možnosti, jak tuto ochranu překonat. V první nainstaluje předem na zařízení uživatele svůj certifikát či aplikaci – udržujte svá zařízení v bezpečí. Ve druhé variantě se uživateli zobrazí upozornění buď na nezašifrované spojení nebo se zobrazí upozornění na neplatný certifikát.
Poznámky

O kvalitě zabezpečení serveru eduroam.vse.cz se můžete přesvědčit pomocí on-line testů:

3. Nastavení hesla, odchycení na eduroam.vse.cz

Popis

Aplikace pro nastavování hesla se dozví nové heslo pro eduroam, zahašuje ho a poté uloží do databáze. Útočník může ovlivnit vlastní aplikaci, může se snažit získat přístup na vlastní server eduroam.vse.cz.

Bezpečnostní hrozby
  • Vzdálené ovlivnění aplikace, útoky:
    • SQL injection – útočník se snaží získat hesla uložená v databázi
    • únos spojení – útočník získá session cookie a poté nastaví své heslo či do zobrazené webové stránky doplní vlastní kód, např. pro odeslání zadaného hesla na svůj server (XSS útok),
  • Útočník získá přístup na server eduroam.vse.cz. Poté má více možností útoků:
    • může upravit aplikaci pro nastavování hesel – např. si hesla bude ukládat i do souboru či posílat na svůj server
    • získá přístupové údaje do DB a může se snažit získat hesla všech uživatelů
Možnosti ochrany

Obrana pro ovlivnění aplikace:

  • Aplikace používá ZendFramework, který poskytuje více ochranných prvků proti SQL Injection či únosu session. V aplikaci se kontrolují vstupní parametry, používají se SQL prepare statements.
  • Aplikace pro změnu hesel je malá, přihlašovací údaje i nové heslo se posílají v jednom požadavku. Nebezpečí únos spojení je proto minimální. Hrozbou zůstává podvodná stránka, která by aplikaci pro změnu hesla měla jako iframe. Zde obrana opět závisí na pozornosti uživatele.

Obrana proti průniku na server:

  • Pro eduroam.vse.cz je samostatný virtuální server. Na serveru není žádná další aplikace, jejíž slabina by umožnila získání přístupu na serveru.
  • Na server se mohou hlásit pouze správci eduroam na VŠE pomocí SSH. Je povoleno pouze přihlašování pomocí klíčů.
  • Bezpečnost serveru je závislá i na bezpečnosti celé virtualizační platformy, ale to je na jiné a dlouhé povídání.
  • Bezpečnost záloh serveru – server není zálohován. Server se konfiguruje pomocí skriptů pro ansible. V konfiguraci jsou uloženy i citlivé údaje (hesla, privátní klíče) – jsou zašifrovány pomocí gpg. Server eduroam.vse.cz slouží „pouze“ pro nastavení hesel, několikahodinový výpadek nezpůsobí sice může několik uživatelů omezit, ale neohrozí vlastní funkčnost WiFi eduroam.

Detekce a minimalizace možných škod při úspěšném průniku na server:

  • Detekce průniku útočníka na server – ad-hoc, není systematická (automatizovaná) detekce
  • Na eduroam.vse.cz není umístěna databáze s hesly, což výrazně omezuje možnosti získat haše hesel všech uživatelů.
  • Minimalizace práv do databáze. Aplikace pro nastavení hesel nemá oprávnění číst uložená hesla. Útočník se získanými přístupovými údaji do databáze může změnit všem uživatelům heslo, nemůže ho si ale přečíst již uložené haše hesel a ty poté lámat.
Poznámky

Uvedené útoky vedou i ke zcizení přístupových údajů ke školnímu účtu.

Uvedené způsoby útoku umožní útočníkovi též změnit Vaše heslo. Tyto útoky a další útoky ze skupiny odepření služby (Denial of service) nejsou součástí této analýzy.

4. Odchycení při přenosu mezi servery

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

5. Zcizení z databáze

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

6. Autentizační servery (RADIUS)

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

7. Přihlášení – odchycení na síti

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

8. Zcizení ze zařízení uživatele

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

9. Hádání hesla

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

10. Podvržený přístupový bod a autentizační server

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky

11. Získání od uživatele, útoky na uživatele

…TODO

Popis
Bezpečnostní hrozby
Možnosti ochrany
Poznámky
  • Autor: Luboš Pavlíček
  • Vytvořeno:
  • Poslední aktualizace: