On 2016-03-27 17:27, Herbert Kleebauer <
kl...@unibwm.de> wrote:
> On 27.03.2016 18:14, Peter J. Holzer wrote:
>>> Der Header enthält eindeutig falsche Angaben:
>>> Received: from
mail.targobank.de (
targobank.de [212.227.8.37])
>>
>> Was ist daran falsch? Der PTR-Record existiert. Du kannst Dich jederzeit
>> davon überzeugen:
>
> Das ist jetzt aber nicht mehr ernst gemeint? Der Name "
targobank.de" gehört
>
> TARGOBANK AG & Co. KGaA
> Kasernenstr 10
> 40213 Duesseldorf
>
> In der Received-Zeile steht, 212.227.8.37 gehört zu
targobank.de
Nein, das steht da nicht.
> und da fragst du was daran falsch ist?
Wie bereits mehrmals gesagt: Du interpretierst Information in die
Received-Zeile hinein, die da nicht drin steht. Die Received-Zeile ist
nicht dafür da, rechtliche Eigentumsverhältnisse zu dokumentieren. Sie
ist dafür da, zu dokumentieren, von welchem Host eine Mail empfangen
wurde. Was da genau drin zu stehen hat, ist im RFC reichlich schwammig
definiert, aber die relevanten Teile sind:
| o The FROM clause, which MUST be supplied in an SMTP environment,
| SHOULD contain both (1) the name of the source host as presented
| in the EHLO command and (2) an address literal containing the IP
| address of the source, determined from the TCP connection.
[...]
| From-domain = "FROM" FWS Extended-Domain
[...]
| Extended-Domain = Domain /
| ( Domain FWS "(" TCP-info ")" ) /
| ( address-literal FWS "(" TCP-info ")" )
|
| TCP-info = address-literal / ( Domain FWS address-literal )
| ; Information derived by server from TCP connection
| ; not client EHLO.
Rein syntaktisch muss ein Domainname da stehen, optional dürfen in
runden Klammern ein weiterer Domainname und eine IP-Adresse folgen.
Was was ist, ist nicht genau festgelegt, aber man kann sich (vor allem,
wenn man die historische Entwicklung kennt) einiges zusammenreimen:
Einer der beiden Domainnamen SOLL der aus dem HELO/EHLO-Kommando sein. Da
aber im Kommentar zu TCP-Info "not client EHLO" steht, kann das nur der
erste, obligate Domainname sein. Das entspricht auch der historischen
Praxis. D.h., die einzige Information, die da stehen MUSS, kann vom
Client beliebig gewählt werden. Das hat sich natürlich als unzureichend
herausgestellt, weshalb die optionale TCP-Info der interessantere Teil
ist.
Der besteht aus "Information derived by server from TCP connection". Das
Address-literal ist ziemlich eindeutig: Das SOLL "the IP address of the
source, determined from the TCP connection" sein , aber was ist die
Domain? Eine TCP-Connection hat keinen Domainnamen, und der im Standard
oft bemühte "canonical host name" ist ein eher theoretisches Konstrukt
aus einer einfacheren Zeit. Was man aber machen kann, ist den zur
IP-Adresse des Clients zugehörigen PTR-Record zu suchen, und den
mitzuloggen.
Das ist das, was die Received-Zeile aussagt:
(1) Ich habe die Mail von einem Host mit der IP-Adresse 212.227.8.37
erhalten. Zum Zeitpunkt des Empfangs existierte ein PTR-Record
37.8.227.212.in-addr.arpa. IN PTR
targobank.de.
Und der Client hat sich mit "EHLO
mail.targobank.de" gemeldet.
Die Received-Zeile sagt nicht:
(2) Ich habe eine Mail von der TARGOBANK AG & Co. KGaA empfangen
Sie sagt auch nicht:
(3) Ich habe eine Mail von einem Host empfangen, der unter dem Namen
targobank.de bekannt ist.
Das sind Interpretationen von Dir.
Da der PTR-Record aber in der Verfügungsgewalt des Absenders liegt
(zumindest theoretisch, praktisch geben die die ISPs oft nicht her),
gehen manche Mailserver einen Schritt weiter: Sie nehmen den PTR-Record
(oder die PTR-Records, es kann meherere geben) und suchen dann die
dazugehörenden A- bzw. AAAA-Records (davon kann es auch wieder mehrere
geben). Nur wenn mindestens einer dieser Adress-Records der
ursprünglichen IP-Adresse entspricht, gilt der Name als
"vertrauenswürdig" oder "verifiziert" und wird in den Received-Header
aufgenommen. Das hat den Vorteil, dass es Aussage (3) entspricht und der
Intuition vieler Leute entgegenkommt (und natürlich den Nachteil, dass
vorhandene Information verworfen wird).
Da der Standard aber nicht vorschreibt, auf welche Art der Domainname
ermittelt werden soll, kannst Du Dich nicht darauf verlassen, dass das
Deiner Intuition entspricht. Du musst wissen, was der entsprechende
Mail-Server macht, sonst kannst Du die Zeile nicht richtig
interpretieren. Wenn Du das nicht weißt, dann musst Du mit Vermutungen
vorsichtig sein und darfst Dich nicht von Deinen Wunschvorstellungen
leiten lassen.
(In der Praxis gab es übrigend viele (und gibt es immer noch
vereinzelte) Mailserver, die sich überhaupt nicht an das von RFC 2821
standardisierte Format halten, sondern ausgehend von RFC 821 ein eigenes
entwickelt haben. Einige dieser Formate waren IMHO deutlich besser
durchdacht, als das, was dann standardisiert wurde, aber natürlich hat der
Wildwuchs die Interpretation von Received-Zeilen zu einer wilden Raterei
gemacht.)
> Wenn ich sage, es ist falsch dass die Telefonnummer 08944556677 zur
> Targobank gehört, antwortest du, dass ist nicht falsch weil bei
> einer Rückwärtssuche bei der Telekom mit dieser Nummer erhält man
> die Targobank als Besitzer der Nummer.
Nein, ich sage (um bei Deinem Gleichnis zu bleiben), dass deine Quelle
niemals behauptet hat, dass diese Telefonnummer der Targobank gehöre,
sondern dass Du eine Aussage falsch verstanden hast. Aber nur, weil Du
eine Aussage falsch verstehst, und daher glaubst, es sei eine falsche
Tatsachenbehauptung aufgestellt worden, ist diese Aussage keine
Fälschung. Sie ist vielleicht missverständlich oder schlecht formuliert.
Aber zwischen einer missverständlichen Aussage und einer Fälschung ist
für mich ein großer Unterschied, selbst wenn beide die gleiche Folge
(der Adressat unterliegt einem Irrtum) haben.