15.4.2019
Cílem článku je ukázat použití elektronického podpisu v poště a ochrana před podvodnými maily. Elektronický podpis je prostředek, který by vás při správněm použití dokázal ochránit před podvodnými maily typu "Paní účetní, zaplaťte prosím, expresně XYZ peněz na účet 123/456. Váš Šéf".
Elektronickým podpisem se zabýváme v mnohem širším kontextu, než jen v poště. Elektronický podpis a s ním spojené šifrování je součástí různých aplikací z naší dílny, kde slouží obvykle k zajištění důvěryhodnosti a k šifrovanému zabezpečení komunikace mezi serverem a klientskou částí aplikace. Aplikací, která je přímo na elektronickém podepisování postavená, je GeoSign. O našich zkušenostech s elektronickým podpisem si můžete přečíst v dodatku na konci článku.
V ideálním případě umožňuje elektronický podpis v poště zajistit tři věci:
I když se to na první pohled možná nezdá, šifrování je tou nejméně důležitou věcí. Mnohem důležitější je pro řádné fungování firmy první a druhý bod: pro příjemce pošty je v některých případech životně důležitá jistota, že mail odeslala skutečně osoba, která je v mailu podepsaná, a že mail nebyl cestou nijak pozměněn. V malé firmě je možné takovou věc zajistit například telefonickým dotazem, ale ve větší firmě nebo při komunikaci mezi firmami je možné jistotu získat pouze elektronickým podpisem.
Jak je elektronický podpis důležitý, vám může říci internetový vyhledávač při zadání fráze "podvržený mail připravil firmy o peníze", namátkou:
Týden.cz: Policie: Firmy v Česku přišly kvůli podvodným e-mailům o miliony – 130 firem se nechalo nachytat, když podvodník poslal jménem ředitele firmy účetní příkaz pro platbu na cizí účty.
Idnes: Založil si falešné e-maily, firmy zmátl a připravil o dva miliony – do mezinárodní emailové komunikace vstoupil podvodník a nechal si proplatit falešnou dvoumiliónovou fakturu.
S podobným mailem se setkal i jeden z našich zákazníků, kdy účetní dorazil mail přibližně tohoto znění:
Ahoj Lucko, prosím tě, zaplať expresně částku 25000 € na účet 1234/5678. Mirek Jednatel
Ano, mail byl skutečně takto familiérní a podvodník zjevně využil znalostí poměrů ve firmě. Zjistit jméno účetní a jednatele či vlastníka společnosti je snadné, údaje jsou často součástí firemních stránek. Rozdíl mezi tykáním a vykáním může být v češtině významný, ale podvodník má vysokou šanci 1:2, že se trefí. Potom je velmi vysoká šance, že takový mail nevzbudí žádné podezření.
Účetní Lucka byla naštěstí natolik rozumná, že dříve, než poslala peníze, zvedla telefon a jednatele a majitele firmy v jedné osobě Mirka se zeptala, jestli to myslí vážně. Majitel se pak ptal nás, jak je možné, že někdo může odeslat jeho jménem takový mail. No... je to možné. A nelze tomu jednoduše zabránit.
Naštěstí obrana existuje. Použít lze hned dva prostředky, ideální je samozřejmě kombinace obou:
Pro odesílání a příjem elektronické pošty používáme ve firmě přednostně dva různé poštovní programy: Thunderbird a KMail. První zmiňovaný poštovní klient je velmi rozšířený jak na Linuxu, tak ve Windows. S dosti vysokou pravděpodobností jej máte ve svém počítači nainstalovaný a zprovozněný i vy. Naproti tomu KMail je program určený pro linuxové prostředí KDE, jinde se prakticky nevyskytuje. Možnosti obou programů jsou prakticky stejné.
U obou programů lze elektronický podpis snadno nainstalovat a používat pro ověřování poštovních zpráv.
V každém programu vypadá podepsaná pošta odlišně. V obou programech se lze ale pomocí několika málo kliknutí dozvědět podstatné informace o použitém elektronickém podpisu. Podepsaná zpráva je u obou aplikací celkem jasně označená jako podepsaná.
Pokud mi kolegyně ze sousední kanceláře pošle mail, ve kterém mě vyzývá k zaplacení několika miliónů, bude mě samozřejmě zajímat, jestli je její zpráva pravá, jestli nejde o podvodný mail. Podepsaná zpráva je u obou poštovních aplikací jasně označená:
Pokud není zpráva podpesaná, samozřejmě to neznamená, že jde nutně o podvrh. Zpráva může být odeslaná například z mobilního telefonu nebo z webového poštovního klienta, kde nemáme elektronický podpis nastavený. V případě miliónové platby by mě měla ale absence podpisu zastavit, zvláště pak u osoby, která své zprávy běžně podepisuje. (Ve skutečnosti by mě zastavila absence miliónů na účtu).
V naší firmě používáme poštovní doménu @hobrasoft.cz. Pro případného podvodníka je velmi snadné podvrhnout mail, aby vypadal jako odeslaný z této domény (pomíjím fakt, že takovou zprávu by náš poštovní server díky SPF záznamům zahodil). Pro podvodníka je ale nesmírně obtížné, ne-li přímo nemožné získat platný a uznávaný elektronický podpis pro tuto doménu. Už samotný fakt, že poštovní klient označil zprávu za vybavenou platným elektronickým podpisem, zaručuje vysokou pravděpodobnost, že zpráva skutečně pochází od osoby, která je uvedená jako odesilatel zprávy.
Další kontrola je možná po kliknutí na detail podpisu:
V současné době používáme certifikát od certifikační autority Comodo. V detailu elektronického podpisu bych tedy měl najít jako vydavatele elektronického podpisu právě tuto certifikační autoritu.
I když je certifikační autorita Comodo uznávaná v současných operačních systémech jako důvěryhodná – jinak by se pošta netvářila jako řádně podepsaná – její způsoby ověření poštovní elektronické adresy nemusejí budit důvěru. Certifikační autorita ověřuje totiž pouze existenci uvedené poštovní adresy a přístup k ní. Zjednodušeně řečeno: ve webovém formuláři vyplníte své iniciály, které vám certifikační autorita pošle na vaši elektronickou adresu. Kliknutím na odkaz v poště potvrdíte, že máte k poště přístup. Žádné další ověřování totožnosti se nekoná.
Takové ověření možná stačí pro vnitřní firemní komunikaci, případně komunikaci s ověřenými obchodními partnery. I takto jednoduché ověření je pro případného útočníka velmi obtížné překonat, takže by mohlo takové ověření stačit i na zajištění miliónových plateb.
V případě, že komunikujete se státem, certifikát od Comodo nestačí. Certifikáty od Comodo jsou zdarma a certifikační autorita vynakládá na ověření uživatele přesně tolik práce, kolik za certifikáty dostane – to jest prakticky nic. Stát provozuje a uznává vlastní certifikační autoritu PostSignum. Tyto certifikáty lze získat na poště a jejich provozování stojí řádově stokoruny ročně. Certifikáty od PostSignum používají typicky třeba už výše zmiňovaní geodeti, mzdové účetní pro komunikaci se zdravotními pojišťovnami či správou sociálního zabezpečení a podobně. Získat certifikát od PostSignum není tak triviální, jako v případě certifikátů Comodo. Nemine vás návštěva CzechPointu na poště a lustrace poštovní úřednicí. Na druhou stranu máte jistotu, že mail podepsaný certifikátem od PostSignum odeslala osoba, kterou někdo na poště aspoň trochu prolustroval – zkontroloval jeho občanku, podepsal s ním smlouvu a v případě firmy ověřil, že firmu zastupuje skutečná pověřená osoba.
Nevýhodou certifikátů PostSignum může být skutečnost, že tato certifikační autorita nemusí být správně rozeznaná na všech počítačích. I přes důkladnější ověření držitele certifikátu se tak může jeho pošta tvářit jako podepsaná neplatným certifikátem. Pro neznalého příjemce takové pošty to pak paradoxně snižuje důvěryhodnost takové pošty.
Cílem seriálu článků bude instalace certifikátů Comodo nebo PostSignum a jejich použití v elektronické poště. V dalším článku si ukážeme, jak získat a nainstalovat certifikáty Comodo. Sledujte náš web nebo Twitter, aby vám článek neuniknul.
V tomto článku se hodlám zabývat primárně elektronickou poštou. V souvislosti s elektronickým podpisem ale musím zmínit i naše aplikace, které elektronický podpis používají. Důvody mám hned dva: jednak nás tyto aplikace a jejich vytváření živí, a jednak lze na jejich příkladu ilustrovat užitečnost elektronického podpisu i v jiných situacích, než jen při ochraně poštovních zpráv.
GeoSign je aplikace určená pro komunikaci geodetů se státními úřady. Zde elektronický podpis zajišťuje důvěryhodnost předávaných informací. Jinými slovy: geodet nemusí běžet s každým geometrickým plánem na úřad osobně a při každé návštěvě úřadu nemusí podstupovat proceduru s řádnou identifikací, jako je kontrola občanky, sejmutí otisků prstů a sken sítnice nebo DNA rozbor. Tuto proceduru absolvuje geodet pouze jednou na poště. Tím se z něj stane státem certifikovaná osoba a rozbor DNA místo geodeta absolvuje pouze jeho elektronický podpis – certifikát. Komunikace s úřadem je tak mnohem jednodušší.
Mnoho aplikací dnes slouží ke sběru dat v terénu. Data se pak předávají ke zpracování do informačního systému ve firmě přes internet. Elektronický podpis společně se šifrováním dokáže jednoduše zajistit, že komunikace mezi serverem a aplikací je jednak neodposlechnutelná a jednak nezfalšovatelná. Server má vždy jistotu, že se baví s tou správnou aplikací a aplikace má vždy jistotu, že se baví s tím správným serverem. Obsah komunikace navíc zůstává utajen před zraky ostatního světa.
Takto zabezpečujeme například servisní aplikaci pro Spedos – servisní pracovníci si ráno v načtou své pracovní úkoly do tabletu, v terénu (často mimo dosah internetu) vyplní servisní listy a další potřebné formuláře a poté (jak jim připojení k iternetu umožní) odešlou servisní listy do informačního systému firmy Spedos. Je jasné, že bez řádného zabezpečení a důvěryhodnosti není možné takovou aplikaci provozovat.
Jinou podobnou aplikací je sledování výrobních čísel jednotlivých komponent a jejich kompletace do hotového výrobku pro firmu Robe. Zde probíhá komunikace pouze po vnitropodnikové síti, ale až se nás v Robe zeptají, zda mohou provozovat aplikaci přes internet, můžeme s klidným svědomím řici: "Ano". Zabezpečení komunikace není raketová věda a na bezpečnost myslíme už při návrhu aplikace.
Celý jeden den tohoto školení je věnovaný síťové komunikaci a jejímu zabezpečení. Knihovna Qt má skvělý nástroj pro komunikaci protokolem HTTP – třídu QNetworkAccessManager Pro výměnu dat mezi serverem a aplikací je protokol HTTP velice vhodný a široce používaný. U aplikací výše uvedeného typu je ale zabezpečení komunikace klíčové – bez zabezpečení by mohlo být pro případného útočníka velmi jednoduché komunikaci odposlechnout, ovlivnit či přímo podvrhnout. Část školení proto věnujeme i zabezpečení komunikace pomocí elektronického podpisu.