Created by Bc. Lukáš Vokurka, DiS

Teoretický úvod

E-mail (elektronická pošta) je způsob elektronické komunikace obvykle prostřednictvím internetu. Přijímat a odesílat e-maily je možné např. přes webové rozhraní, desktopové nebo mobilní aplikace. Konkrétní zpráva (e-mail) se posílá na e-mailovou adresu příjemce (nebo příjemců). E-mailová adresa se skládá z místní části, zavináče a domény, respektive doménového jména. [1]

Architektura pošty

Doručování elektronické pošty po Internetu se účastní tři druhy programů.

MUA (Mail User Agent)

Poštovní klient, který zpracovává zprávy na straně uživatele (pro mobilní zařízení např.: Fairmail, K9).

MTA (Mail Transfer Agent)

Server, který se stará o doručování zprávy na cílový systém adresáta.

MDA (Mail Delivery Agent)

Program pro lokální doručování, který umísťuje zprávy do uživatelských schránek, případně je může přímo automaticky zpracovávat (ukládat přílohy, odpovídat, spouštět různé aplikace pro zpracování apod.). [2]

Důležitý je pak MX záznam, což je druh položky v DNS, který obsahuje informaci o poštovních serverech obsluhující e-mailové adresy v dané internetové doméně. [3]


Komunikační protokoly

SMTP (Simple Mail Transfer Protocol)

Internetový protokol určený pro přenos zpráv elektronické pošty mezi jednotlivými MTA. Protokol zajišťuje doručení pošty pomocí přímého spojení mezi odesílatelem a adresátem. Zpráva je doručena do tzv. poštovní schránky adresáta, ke které potom může uživatel kdykoliv přistupovat (vybírat zprávy) buď přímo na serveru, nebo z jiného počítače pomocí protokolů POP (dnes POP3) nebo IMAP. [2]

IMAP (Internet Message Access Protocol)

Internetový protokol pro vzdálený přístup k e-mailové schránce prostřednictvím e-mailového klienta. IMAP nabízí oproti jednodušší alternativě POP3 pokročilé možnosti vzdálené správy (práce se složkami a přesouvání zpráv mezi nimi, prohledávání na straně serveru, apod.) a práci v tzv. on-line i off-line režimu. V současné době se používá protokol IMAP4, který je definován v RFC 3501, používá porty 143, 220 a 993 (IMAP přes SSL). [4]

POP3 (Post Office Protocol)

Internetový protokol, který se používá pro stahování e-mailových zpráv ze vzdáleného serveru na klienta. Jedná se o aplikační protokol pracující přes TCP/IP připojení. V současnosti je používána třetí verze (POP3), která byla standardizována v roce 1996 v RFC 1939. Ze vzdáleného serveru se stáhnou všechny zprávy, třeba i ty, které uživatel číst nechce, nebo spam (pokud ho již nefiltruje poštovní server). Většina POP3 serverů sice umožňuje stáhnout pouze hlavičky zpráv (a následně vybrat zprávy, které se stáhnou celé), ale podpora v klientech chybí. Tuto nevýhodu řeší protokol IMAP, který pracuje se zprávami přímo na serveru. [5]


TLS (Transport Layer Security)

Kryptografický protokol určený k zajištění bezpečnosti komunikace v počítačové síti. Cílem protokolu TLS je především zajistit bezpečnost včetně soukromí (důvěrnosti), integrity a autenticity pomocí kryptografie, například pomocí certifikátů, mezi dvěma nebo více komunikujícími počítačovými aplikacemi. Probíhá na prezentační vrstvě modelu OSI. [6]

S/MIME (Secure/Multipurpose Internet Mail Extensions)

Umožňuje digitální podepisování a šifrování obsahu e-mailu pomocí certifikátů. Zajišťuje autenticitu odesílatele (digitální podpis) a ochranu obsahu e-mailu (šifrování). Příjemce musí mít odpovídající certifikát k dešifrování zprávy. [7]

PGP (Pretty Good Privacy) / OpenPGP

Je šifrovací program, který zajišťuje kryptografické soukromí a ověřování datové komunikace. PGP se používá k podepisování, šifrování a dešifrování textů, e-mailů, souborů, adresářů a celých diskových oddílů a ke zvýšení bezpečnosti e-mailové komunikace. PGP a podobný software se řídí standardem OpenPGP (RFC 4880), otevřeným standardem pro šifrování a dešifrování dat. [8]

DMARC (Domain Based Message Authentication Reporting)

Bezpečnostní e-mailový protokol DMARC využívá DNS a k ověření odesílatelů e-mailů používá otevřené protokoly SPF (Sender Policy Framework) a DKIM (DomainKeys Identified Mail). [9]

DANE (DNS - based Authentication of Named Entities)

DANE je technologie, která řeší problém s integritou komunikace, informuje protistranu pomocí záznamu v DNS, že náš poštovní server podporuje STARTTLS a jaký používá certifikát nebo od jaké CA (certifikační autority). [10]

SPF (Sender Policy Framework)

Definuje, které servery jsou oprávněné odesílat e-maily z určité domény. Zabraňuje podvržení identity odesílatele a snižuje riziko nevyžádané pošty (spam). [11]


Typy šifrování, hashování a digitální podpis

Symetrické šifrování

Při symetrickém šifrování se používá k zašifrování i dešifrování zprávy stejný klíč. Tento klíč musí mít předem k dispozici obě komunikující strany. Příklady symetrických šifer jsou AES (Advanced Encryption Standard), DES (Data Encryption Standard), 3DES nebo RC4. Šifra AES je považována za nejbezpečnější. Problémem symetrického šifrování je způsob výměny sdíleného klíče (viz obrázek). Pokud by byl klíč zachycen útočníkem, celá komunikace by mohla být odposlouchávána. [6]

Asymetrické šifrování

Při asymetrickém šifrování si každá komunikující strana vygeneruje dvojici klíčů – veřejný klíč a tajný klíč. Zatímco veřejný klíč je poslán druhé straně, tajný klíč si každá strana ponechá u sebe. Veřejný klíč je obvykle použit k zašifrování dat a tajný klíč k dešifrování dat (u digitálních podpisů je to naopak). Příklady asymetrických šifer jsou RSA (Rivest, Shamir, Adleman) a El-Gamal. Diffie - Hellmanův algoritmus využívá principu asymetrické kryptografie, ale slouží k výměně tajného klíče pro symetrické šifrování. Nevýhodou je, že asymetrické šifrování je výpočetně náročnější než symetrické šifrování. [6]

Hashování

Hashování se používá k zajištění integrity dat. Hashovací funkce přemění zprávy různé délky na hashované zprávy definované stejné délky. Hashování je jednosměrné šifrování, tj. z hashované zprávy již nelze odvodit původní zprávu. Hashování dvou různých zpráv vytvoří dvě různé hashované zprávy. [6]

Digitální podpis

Digitální podpis slouží k autentizaci zdroje dat a ke kontrole integrity přenášených dat. Využívá k tomu kombinaci hashovacího algoritmu a asymetrické šifry. [6]


Praktické ukázky

Připojení digitálního podpisu

V prvním kroku jsem si nechal vygenerovat pro svůj školní e-mail osobní certifikát na https://tcs.cesnet.cz/, který slouží pro S/MIME (vydáno certifikační autoritou). Je utné si nastavit heslo, které se zadává při importu do e-mail klienta.

Obrázek 1: Generace certifikátu CESNET

Pro praktické ukázky jsem použil e-mail klienta Thunderbird, která je volně ke stažení. Na obrázku níže je vidět nastavení MTA. Pro stahování pošty z MTA je použit protokol IMAP port 993 a pro poslání zprávy na MTA SMTP port 465. Komunikace je zabezpečena pomocí SSL/TLS.

Obrázek 2: Nastavení MTA

Po příhlášení jsem naimportoval vygenerovaný certifikát do Thunderbirdu.

Obrázek 3: Import certifikátu do Thunderbird

Obrázek 4: Náhled certifikátu

Po importu certifikátu jsem poslal zprávu, která již byla digitálně podepsaná, což jednoznačně identifikuje odesílatele.

Obrázek 5: Digitálně podepsaný e-mail

Důležité je si uvědomit, že samotný digitální podpis není šifrování ale potvrzuje pouze identitu odesílatele.


Šifrovaný e-mail S/MIME

S/MIME využívá certifikáty, které vydává důvěryhodná certifikační autorita. Předtím, než bude probíhat šifrovaná komunikace pomocí S/MIME je nutné, aby si obě komunikující strany certifikáty vyměnily. Poté, co obdržím certifikát od druhé strany si ho uložím do správce certifikátů v Thunderbird.

Obrázek 6: Správce certifikátů

Jakmile si obě komunikující strany vymění své certifikáty, mohou vzájemnou komunikaci šifrovat pomocí S/MIME.

Obrázek 7: Šifrovaný e-mail pomocí S/MIME

Obrázek 8: Zašifrovaný text pomocí S/MIME


Šifrovaný e-mail OpenPGP

OpenPGP je decentralizovaný systém, kde si obě komunikující strany vytvoří vlastní klíče a to bez nutnosti certifikační autority, což může být velmi užitečné pro uživatele, kteří nechtějí záviset na certifikační autoritě.

Pokud chci s druhou komunikující stranou navázat šifrovanou komunikaci pomocí OpenPGP, je nutné, abychom si vyměnili své vygenerované veřejné OpenPGP klíče. Odesílanou zprávu potom zašifruju veřejným klíčem příjemce.

Obrázek 9: Generace OpenPGP klíče

Takto vygenerovaný openPGP klíč odesílám druhé straně a stejně tak mi druhá strana posílá svůj OpenPGP klíč, který si uložím do správce klíčů OpenPGP.

Obrázek 10: Import OpenPGP klíče příjemce

Obrázek 11: Správce klíčů OpenPGP

Po této výměně je možné komunikaci šifrovat pomocí OpenPGP.

Obrázek 12: Šifrovaný e-mail pomocí OpenPGP v Thunderbird

Obrázek 13: Šifrovaný e-mail pomocí OpenPGP ve webovém rozhraní

Obrázek 14: Zašifrovaný text pomocí OpenPGP


Reference

  1. E-mail. Online. Wikipedia. 2024. Dostupné z: https://cs.wikipedia.org/wiki/E-mail. [cit. 2024-04-14].

  2. Simple Mail Transfer Protocol. Online. Wikipedia. 2024. Dostupné z: https://cs.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol. [cit. 2024-04-14].

  3. MX záznam. Online. Wikipedia. 2023. Dostupné z: https://cs.wikipedia.org/wiki/MX_z%C3%A1znam. [cit. 2024-04-22].

  4. Internet Message Access Protocol. Online. Wikipedia. 2024. Dostupné z: https://cs.wikipedia.org/wiki/Internet_Message_Access_Protocol. [cit. 2024-04-14].

  5. Post Office Protocol. Online. Wikipedia. 2024. Dostupné z: https://cs.wikipedia.org/wiki/Post_Office_Protocol. [cit. 2024-04-14].

  6. Pokročilé síťové technologie. Online. MACHNÍK, Petr. LMS. 2021. Dostupné z: https://lms.vsb.cz/pluginfile.php/2063988/mod_resource/content/25/Pokro%C4%8Dil%C3%A9%20s%C3%AD%C5%A5ov%C3%A9%20technologie.pdf. [cit. 2024-04-21].

  7. S/MIME for message signing and encryption in Exchange Online. Online. Microsoft. 2024. Dostupné z: https://learn.microsoft.com/en-us/exchange/security-and-compliance/smime-exo/smime-exo. [cit. 2024-04-21].

  8. Pretty Good Privacy. Online. In: Wikipedia: the free encyclopedia. San Francisco (CA): Wikimedia Foundation, 2001-2024. Dostupné z: https://en.wikipedia.org/wiki/Pretty_Good_Privacy. [cit. 2024-11-11].

  9. What Is DMARC? Online. Cisco. 2024. Dostupné z: https://www.cisco.com/c/en/us/products/security/what-is-dmarc.html. [cit. 2024-04-21].

  10. Zabezpečení SMTP komunikace pomocí DANE. Online. Www.samuraj-cz.com. 2024. Dostupné z: https://www.samuraj-cz.com/clanek/zabezpeceni-smtp-komunikace-pomoci-dane/. [cit. 2024-04-17].

  11. Sender Policy Framework. Online. In: Wikipedia: the free encyclopedia. San Francisco (CA): Wikimedia Foundation, 2001-2024. Dostupné z: https://en.wikipedia.org/wiki/Sender_Policy_Framework. [cit. 2024-11-11].