Protokol SSL/TLS je technologií běžně užívanou pro šifrování komunikace mezi klientskými počítači a serverem. Ač není jediným mechanismem užívaným bankami pro ochranu internetového bankovnictví, bývá pomyslným základním kamenem této ochrany.
Přesto v testu společnosti Xiphos Research, uskutečněném začátkem roku 2016, dopadly britské banky poměrně špatně a u většiny z nich byly objeveny větší či menší nedostatky v zabezpečení SSL užívaném na jejich serverech. Obdobný test vykonaný společností Alef Nula v českých podmínkách dopadl o poznání lépe – většina bank v něm uspěla.
Ve svém průzkumu otestovala britská společnost Xiphos Research 84 bank působících na tamním trhu. Banky hodnotila písmeny podobně jako na některých univerzitách. Celkem 14 procent z testovaných bank si vysloužilo nejhorší známku F, protože nastavení jejich serverů a používaný SSL protokol vykazovaly významné bezpečnostní chyby.
Nedostatečně zabezpečený server internetového bankovnictví byl detekován u poloviny z 59 britských bank a finančních institucí. Stejně dopadlo i 79 procent serverů užívaných 25 bankami působícími ve Velké Británii, ale majícími zahraniční vlastníky.
V osmi případech obsahoval používaný SSL protokol zranitelnost Poodle, která byla detekována bezpečnostním týmem Googlu už v říjnu 2014. Tato zranitelnost přitom může umožnit útočníkovi dostat se k dešifrované části obsahu SSL relace mezi klientem a serverem.
Ukázalo se také, že banky často využívají zastaralé verze SSL šifrování nebo překonané SHA šifrovacího klíče.
České banky úspěšnější
Nepříliš dobré výsledky britských bank inspirovaly k vykonání podobného testu i bezpečnostní tým společnosti Alef Nula.
Čeští experti využili stejnou metodologii jako výzkumníci Xiphos Research a otestovali nastavení SSL na celkem 33 serverech internetového bankovnictví provozovaných 30 českými bankami (resp. bankami užívajícími pro internetové bankovnictví adresy v doméně .cz).
Úroveň zabezpečení byla hodnocena na zmíněné škále SSL Server Rating. Ta podle výsledků měření hodnotí bezpečnost nastavení SSL stupni A (velmi vysoká) až F (vykazující závažné nedostatky a zranitelnosti).
U nejlepšího hodnocení A rozlišuje ještě úroveň A+, určenou pro případy, kdy banky implementovaly některá nadstandardní opatření, a A– znamenající, že v zabezpečení SSL protokolu se objevily jen méně závažné nedostatky.
Oproti Británii dopadl test v Česku o poznání lépe – více než dvě třetiny českých bank získaly hodnocení A. U deseti z nich se nalezly jen marginální bezpečnostní nedostatky, takže byly ohodnocené stupněm A–, naopak čtyři získaly nejvyšší hodnocení A+, což znamená, že zabezpečení SSL na svých serverech zvýšily pomocí nadstandardních opatření.
A u 11 serverů pak byly zjištěny různě závažné slabiny a/nebo konfigurační nedostatky SSL.
Chyby? Opět boduje pudl
Stejně jako v případě bank ve Velké Británii také u českých bank byl nejčastěji objevenou závažnou zranitelností Poodle. V Česku to bylo ale jen u dvou bankovních serverů, tedy přibližně u šesti procent. Ve Velké Británii to byla téměř desetina.
Po jednom serveru obsahovalo ve svém bezpečnostním protokolu zranitelnosti Crime a Logjam. Zranitelnost Crime umožňuje útočníkovi učinit tzv. session hijacking, tedy za určitých okolností převzít SSL relaci, Logjam pak dokáže snížit složitost užitého šifrování na velmi nízkou úroveň, v důsledku čehož je možné relativně snadno dešifrovat a modifikovat probíhající komunikaci.
Zmíněné zranitelnosti mohou představovat citelnou hrozbu pro aplikace pracující s důvěrnými daty. V kombinacích, které by mohly reálně ohrozit bezpečnost klientů užívajících internetové bankovnictví, se vyskytovaly v případě dvou z testovaných serverů.
Pokud jde o verzi používaných protokolů a šifrovacích klíčů, byla situace v Česku podobná Velké Británii. U pěti serverů užívajících SSL bylo zjištěno využívání zastaralého šifrovacího algoritmu RC4 a u stejného počtu byly detekovány slabiny v konfiguraci Diffie Hellmanova algoritmu výměny klíčů (užití malých prvočísel).
Test také objevil nedostatky v oblasti podpory protokolů. Dva servery stále spoléhaly na zastaralý a nedostatečně zabezpečený protokol SSL verze 3.0 a celkem šest analyzovaných SSL instancí nepodporovalo nejnovější a nejbezpečnější verzi (1.2) protokolu TLS.
Na pěti zkoumaných serverech byly používány certifikáty SHA-1, které v současnosti přestávají být považované za bezpečné a všechny nejčastěji užívané prohlížeče plánují v blízké době ukončit jejich podporu. Certifikát nepodepsaný důvěryhodnou certifikační autoritou používal pouze jeden z analyzovaných serverů.
Obezřetnost, nikoli panika
Přestože třetina serverů poskytujících v České republice služby internetového bankovnictví obsahovala v době průzkumu nedostatky či zranitelnosti v užitých SSL mechanismech, není třeba propadat panice.
Útok na většinu z nich by totiž byl poměrně komplikovaný. Reálně využitelné zranitelnosti, které představují citelnou hrozbu pro chráněnou komunikaci mezi klientem a bankou, vykazovaly pouze dva ze zkoumaných serverů (oba hodnocené stupněm F).
V případě jednoho dalšího by potom úspěšný útok na bezpečnost navázaného spojení mohl být potenciálně realizován za velmi specifických okolností. Realisticky závažné zranitelnosti se tedy týkaly pouze šesti až devíti procent analyzovaných serverů.
Jak se testuje SSL v bankovních systémech
Český i britský test bezpečnosti SSL mechanismů využívaly stejnou metodologii. Použil se při nich nástroj SSL Server Test a úroveň zabezpečení byla hodnocená na škále SSL Server Rating v rozmezí A až F, s doplňkovým označením písmenem T pro servery s nedůvěryhodným certifikátem.
Parametry užívanými pro zařazení ve škále jsou typy podporovaných protokolů, tvořící 30 procent výsledného hodnocení, dalších 30 procent připadá na užité mechanismy bezpečné výměny klíčů a 40 procent zaujímají typy podporovaných šifer.
Autor pracuje jako bezpečnostní expert ve společnosti Alef Nula.
Tento příspěvek vyšel v Security Worldu 1/2016. Časopis (starší čísla i předplatné těch nadcházejících) si můžete objednat na adrese našeho vydavatelství.