Jenom malo lidi si uvedomuje, ze jejich e-mail v Dorucene poste nemusi byt opravdu od toho, kdo je uveden v odesilateli. Poslat e-mail z cizi e-mailove adresy je velice jednoduche a rychle. Kdyz se to navic sikovne provede, nehrozi ani odhaleni. Jak je to mozne? Jednoduse. SMTP protokol,
ktery se stara o posilani e-mailu, zkratka moc neresi, co mu date za
udaje. Co zadate, to posle. Dnes by se to mohlo zdat jako chyba, ale v
roce 1982, kdyz SMTP vzniknul, to asi byla vlastnost (It's Not a Bug, It's a Feature!). SMTP server posloucha na TCP portu 25, prikazy se zadavaji ve forme "cisteho textu" (zadne binarni ani xml blbosti). Je tedy mozne si pomoci telnetu povidat s SMTP serverem. V linuxu telnet naleznete v zakladni instalaci, ve Windows XP muzete zkusit Hyperterminal (nedoporucuju). Nejuniverzalnejsi a nejlepsi je pouzit putty. Ukazka odeslani e-mailu pres telnetKratka ukazka odeslani e-mailu (zdoj wikipedia.cz): C je klient a S je server. 1. C: navázání spojení se serverem (zpravidla na TCP portu 25) 2. S: 220 mail.example.com ESMTP Postfix 3. C: HELO example.net 4. S: 250 Hello example.net 5. C: MAIL FROM: <sender@example.net> 6. S: 250 Ok 7. C: RCPT TO: <friend@example.com> 8. S: 250 Ok 9. C: DATA 10. S: 354 End data with <CR><LF>.<CR><LF> 11. C: Subject: test message 12. C: From: sender@example.net 13. C: To: friend@example.com 14. C: 15. C: Hello, 16. C: this is a test. 17. C: . 18. S: 250 Ok: queued as 12345 19. C: QUIT 20. S: 221 Bye Je to velice jednoduche na pochopeni:
Veskery obsah e-mailu musi byt ve forme textu. Priloha se tak musi prevest taky na text. K tomu se pouziva base64 kodovani. Na prevod je spousta programu i online nastroju. Problem nastane, kdyz
E-mailove hlavickyexistuje jich hodne, uvedu pouze ty zajimave: Received: by 10.143.168.15 with HTTP; Mon, 2 May 2011 15:00:55 -0700 (PDT) X-Originating-IP: [1.2.3.4] Date: Tue, 3 May 2011 00:00:55 +0200 Subject: =?ISO-8859-1?Q?Nasazen=ED_Ubuntu?= From: = tux <hello@world.cz> To: =linux <linus@domena.tld> Content-Type: text/plain; charset=ISO-8859-2 Content-Transfer-Encoding: quoted-printable X-Original-Sender: X-Original-Authentication-Results: X-Google-Group-Id: X-Priority: 1 Vsechny hlavicky zacinajici X- jsou volitelne - muzete si dat jake chcete, pouzivaji to nektere programy. Instalace vlastniho SMTP serveruKdyz budete chtit takto poslat mail a pouzijete SMTP server sveho
poskytovatele internetoveho pripojeni, nebo e-mailove schranky, z
99,99999% se budete muset overit pres jmeno a heslo a vzdy zanechate
svoji IP - anonymita tedy neni. sudo apt-get update && sudo apt-get install postfix Tim ziskate vlastni smtp server na svem lokalnim pocitaci. Posloucha na adrese: localhost:25 a 127.0.0.1:25. Je to to same - proste lokalni pocitac. Jakmile z nej ale poslete mail, je mozne vas vystopovat pomoci IP adresy. Jestli chcete anonymitu pouzijte tor, nebo jineho anonymizera. Nebo vyuzijte internetovou kavarnu. Zkusime si poslat mail:A nyni si ukazeme, jak poslat mail ze sveho vlastniho SMTP serveru: martin@eu:~$ telnet localhost 25 Trying ::1... Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 eu.vancl.eu ESMTP Postfix (Ubuntu) HELO localhost 250 eu.vancl.eu MAIL FROM: bill.gates@microsoft.com 250 2.1.0 Ok RCPT TO: tux.martin@gmail.com 250 2.1.5 Ok DATA 354 End data with <CR><LF>.<CR><LF> Subject: Ahoj, nechces penize? From: bill.gates@microsoft.com To: tux.martin@gmail.com Reply-To: muj.mail.pro.odpoved@seznam.cz Date: Tue, 3 Jan 1999 11:09:47 +0200 Ahoj, mam moc penez. Rad bych ti daroval 1 000 000 USD. Posli mi cislo uctu. Bill :-) . 250 2.0.0 Ok: queued as 344DB5F8CB QUIT 221 2.0.0 Bye Connection closed by foreign host. martin@eu:~$
A takhle to pak vypada v e-mailovem klientovi (na ukazce je webove rozhrani gmail.com). Kdo necetl muj clanek, bude si myslet, ze mu pise pravy Bill Gates. Dokonce i po zobrazeni podrobnosti to vypada dobre. Odesilatel vypada verohodne, datum je zvlastni, ale zobrazuje se tak, jak jsem chtel. Jedina divna je adresa pro odpoved. Po zobrazeni originalu (primo to, co dorucil SMTP server): Delivered-To: tux.martin@gmail.com Received: by 10.229.238.210 with SMTP id kt18cs9338qcb; Tue, 3 May 2011 01:08:17 -0700 (PDT) Received: by 10.205.24.9 with SMTP id rc9mr744450bkb.92.1304410096519; Tue, 03 May 2011 01:08:16 -0700 (PDT) Return-Path: <bill.gates@microsoft.com> Received: from eu.vancl.eu ([1.2.3.4]) by mx.google.com with ESMTP id k20si24448385bku.0.2011.05.03.01.08.15; Tue, 03 May 2011 01:08:16 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning bill.gates@microsoft.com Je jasne, ze jde o podvrh. Proc by taky Microsoft posilal e-maily
pres muj server (eu.vancl.eu). Zaroven si muzete vsimnout, ze i SPF (o
tom pisu nize) ma vyhrady o pravosti. Vidite i udaje o casu: mail by
odeslan v roce 1999 ale server ho prijal v roce 2011 - to je horsi, nez
Ceska Posta Pri psani odpovedi uzivatel vidi adresu pro odpoved
Oznameni o doruceni e-mailuNekdy se take muzete setkat s potvrzenim o doruceni e-mailu. SMTP protokol toto nijak neresi, proto se pouzivaji nasledujici hlavicky: X-Confirm-Reading-To: mail@domena.cz Je dulezite si uvedomit, ze jde o nestandardni funkci. I kdyz si tedy zapnete ve svem Outlooku potvrzeni o precteni, neznamena to, ze ho dostanete. Vetsina e-mailovych klientu (treba Thunderbird) umoznuje odpoved na potvrzeni zakazat (sam to vzdycky zakazuju, nemam tuto funkci rad). Treba webovy gmail.com tuto funkci vubec nepodporuje. Jak se branit?Jiste vas zajima, jak se branit a jak poznat podvod. Velice tezko. Pro spravce domeny:
Na DKIM ani SPF se ale nemuzete spolehnout, musi je podporovat obe strany a pouzivani neni povinne. Pro uzivatele: Asi jedinym (a nejlepsim) resenim je pouzivat elektronicky podpis, nebo PGP/GPG sifrovani. Pak mate jistotu, ze odesilatel je opravdu odesilatel
Takze az vam priste prijde e-mail od banky a bude chtit poslat heslo, jeste to neznamena, ze e-mail opravdu psali v bance. http://contact.xf.cz/ |
PC zone >