orm@doc-tcpip.org | Erstellt: Januar 2003 - Letzte Modifikation: August 2003 |
Man kann beim Verschicken von Email mit wenig Aufwand sowohl die Sender-Adresse wie auch die Empfänger-Adresse fälschen.
Das Fälschen der Empfänger-Adresse ist zuerst einmal überraschend, denn wie soll eine falsch adressierte Mail in das Postfach des betroffenen User fallen?
Das ist aber kein Fehler der entsprechenden, lokalen Mail-Agenten, sondern eine Folge des Protokolls.
Es gibt ein kurzlebiges, sogenanntes envelope, das die vom anderen Mail-Server bzw. MTA übermittelten Meta-Daten enthält. Die hierin enthaltene Information kann im Datenteil der Mail überschrieben werden.
Das bedeutet: Die Mail wird nach den Angaben im Envelope zugestellt, in den mitgegebenen Information werden andere Angaben gemacht, die der MUA (Mail User Agent, z.b. Pine, Netscape, Outlook etc.) auswertet - er kriegt ja nichts mehr anderes zu sehen, weil die Daten aus dem Envelope ja schon verschwunden sind.
Hier ein kleines Beispiel:
Ich schicke mir (also an den User ohager auf der Maschine
dev.idi.org) eine mehrfach gefälschte Mail vom nichtexistenten
User ein.trottel von der nichtexistenten Domain
im.weltall.de.
Jetzt soll die Mail aber so aussehen, wie wenn sie vom User yargl@karg.kom käme - und sie soll als Zieladresse den User boese@boesewicht.com ansprechen.
Das dient zur Verwirrung der Russen, treibt User dazu, wutentbrannt die Sysadmins anzuschreien, weil sie "offensichtlich" Mails bekommen, die garnicht für sie bestimmt sind.
Hier die einzelnen Schritte, wie immer sind alle Zeilen mit Nummern davor vom Mail-Server, mit dem ich rede. Die anderen Zeilen tippe ich ein (HELO, DATA, To: etc.).
ohager@dev.idi.org:/home1/ohager/Zeug > tn dev 25 Trying... Connected to dev.idi.org. Escape character is '^T'. 220 dev.idi.org ESMTP Sendmail AIX4.3/UCB 8.8.8; Fri, 28 Mar 2003 13:02:28 +0100 HELO dev 250 dev.idi.org Hello dev.idi.org [172.16.13.4], pleased to meet you MAIL from:ein.trottel@im.weltall.de 250 ein.trottel@im.weltall.de... Sender is valid. RCPT to:ohager@dev 250 ohager@dev... Recipient is valid. DATA 354 Enter mail. End with the . character on a line by itself. To: boese@boesewicht.com From: yargl@karg.kom Hi, Lügenmail... ;-) . 250 NAA49950 Message accepted for delivery
Das Ganze landet dann in meinem Mailfile, das natürlich nur Root und ich sehen können (ich auch nur über meinen MUA):
root@dev.idi.org/var/spool/mail# cat ohager From ein.trottel@im.weltall.de Fri Mar 28 13:10:01 2003 Date: Fri, 28 Mar 2003 13:07:21 +0100 Message-Id: <200303281207.NAA49950@dev.idi.org> To: boese@boesewicht.com From: yargl@karg.kom Hi, Lügenmail... ;-)
Die Files, die der Mailer zu seinen Zwecken anlegt, sind nur sehr kurz zu sehen, solange, bis er die Mail zugestellt hat. Diese Files werden während der Kommunikation mit dem Mail-Server angelegt. Um sie zu fassen muß man schnell sein....
root@dev.idi.org/var/spool/mqueue# ls -l total 1 -rw------- 1 root system 0 Mar 28 13:14 dfNAA49950 -rw------- 1 root system 0 Mar 28 13:14 qfNAA49950 -rw------- 1 root system 32 Mar 28 13:14 xfNAA49950
Es ist ein File mit reinen Transfer-Daten, eine Art Puffer (xfxxxxxxxx, xf bezeichnet die File-Art, ab dem NA****** ist es eine Nummer, die der Mailer vergibt (die er bei der direkten Kommunikation auch ausgibt).
Dann das File mit den Meta-Daten, also der Adresse etc. (qfxxxxxxxx) und schließlich das File mit den eigentlichen Daten der Nachtricht (dfxxxxxxxx).
root@dev.idi.org/var/spool/mqueue# cat xfNAA49950 <<< rcpt to:ohager@dev <<< data root@dev.idi.org/var/spool/mqueue# cat dfNAA49950 To: boese@boesewicht.com From: yargl@karg.kom Hi, Lügenmail... ;-) root@dev.idi.org/var/spool/mqueue# cat qfNAA49950 V2 T1048853654 K0 N0 P30130 I10/6/7989 F8 $rSMTP $sdev $_dev.idi.org [172.16.13.4] Sein.trottel@im.weltall.de RPFD:ohager@dev H?P?Return-Path: ein.trottel@im.weltall.de H?D?Date: Fri, 28 Mar 2003 13:14:14 +0100 H?M?Message-Id: <200303281214.NAA49950@dev.idi.org> HTo: boese@boesewicht.com HFrom: yargl@karg.kom .
Wichtig sind diese Zeilen:
Sein.trottel@im.weltall.de RPFD:ohager@devSender und Empfänger. Der Sender kann gefälscht sein, der Empfänger ist zwangläufig echt. Diese Information geht im Moment der Zustellung der Mail (in das Mail-File in /var/spool/mail/ohager) verloren!
H?P?Return-Path: ein.trottel@im.weltall.de H?D?Date: Fri, 28 Mar 2003 13:14:14 +0100 H?M?Message-Id: <200303281214.NAA49950@dev.idi.org> HTo: boese@boesewicht.com HFrom: yargl@karg.komDas sind die Header-Informationen, die der Mailer des Users zu sehen bekommt. Mehr nicht.
Hier sind die einzelnen Files den Befehlen zugeordnet, die sie
erstellen:
Nach MAIL:
root@dev.idi.org/var/spool/mqueue# ls -l total 0 -rw------- 1 root system 0 Mar 28 13:19 qfNAA49950 -rw------- 1 root system 0 Mar 28 13:19 xfNAA49950Nach RCPT:
root@dev.idi.org/var/spool/mqueue# ls -l total 1 -rw------- 1 root system 0 Mar 28 13:19 qfNAA49950 -rw------- 1 root system 23 Mar 28 13:20 xfNAA49950 root@dev.idi.org/var/spool/mqueue# cat xfNAA49950 <<< rcpt to:ohager@dev
root@dev.idi.org/var/spool/mqueue# ls -l total 1 -rw------- 1 root system 0 Mar 28 13:21 dfNAA49950 -rw------- 1 root system 0 Mar 28 13:19 qfNAA49950 -rw------- 1 root system 32 Mar 28 13:21 xfNAA49950 root@dev.idi.org/var/spool/mqueue# cat xfNAA49950 <<< rcpt to:ohager@dev <<< data
Jetzt schreibe ich die eigentliche Mail, die im x-File teilweise zwischen gespeichert wird. Sobald ich einen Punkt alleine auf eine Zeile setze, macht der Mailer das File zu und stellt die Mail dem im Envelope genannten User zu. Diese Information geht dann verloren.
Schaue ich mir als User ohager die Mail im Netscape an:
Date: Fri, 28 Mar 2003 13:07:21 +0100 Message-ID: <200303281207.NAA49950@dev.idi.org> To: boese@boesewicht.com From: yargl@karg.kom Status: X-Mozilla-Status: 0000 X-Mozilla-Status2: 00000000 Hi, Lügenmail... ;-)Und ich wundere mich...
Es gibt Mailer und Spam-Filter, die diese Felder Abgleichen und so Mails aussortieren....
[ Allgemein | UNIX | AIX | TCP-IP | TCP | ROUTING | DNS | NTP | NFS | FreeBSD | Linux | RPi | SMTP | Tracing | GPS | LW ]
Copyright 2001-2021 by Orm Hager - Es gilt die GPL