x-Message-Flag

Alle Skripte sind Muster ohne jede Gewährleistung oder Funktionsgarantie. für Schäden bin ich nicht verantwortlich. Achten Sie auf Zeilenumbrüche bei der Übernahme.

SMTP-Nachrichten bestehen aus einem Header, dem Body und optionalen Anlagen. Der normale Anwender sieht in seinem Outlook nur die Mail mit den Anlagen und ausgewählte Informationen aus dem Header. dazu zählt der angebliche Absender, der Empfänger, der Betreff und das Datum. All diese Daten können gefälscht sein. Immer mehr Firmen gehen daher dazu über, die Informationen zu prüfen und bei unstimmigkeiten dem Anwender anzuzeigen. Einige Produkte ändern dazu den Betreff der Nachricht und fügen das Ergebnis der Evaluierung dort hinzu. Das sieht natürlich nicht immer gut aus.

Was ist x-message-flag ?

Wenn Sie Exchange mit Outlook oder Outlook Express verwenden, dann gibt es eine weitere Funktion. Im Header können Anwendungen eigene Felder hinzufügen. Diese eigenen Felder sollten laut RFC mit einem "X-" beginnen. Es bleibt dann den einzelnen Anwendungen überlassen, diese Felder auszuwerten. So gibt es Produkte, die dort ihre Seriennummer hinterlegen und damit entdecken, dass zwei Geschäftspartner oder Freunde die gleiche Version einer Software nutzen.

Outlook und Outlook Express unterstützen das Feld "X-Message-Flag" und zeigen bei der Mail auch mit an. Eigentlich ist dieser Weg eine nette Funktion, damit der Administrator bestimmte Informationen mit übermitteln kann, ohne gleich die Mail verändern zu müssen. Dies würde z.B.: sonst auch eine Signatur brechen. So kann ein Spamfilter oder Virenfilter hier zusätzliche Informationen hinterlegen.

Senden Sie einfach folgende Zeilen  senden mit "TELNET mailserver 25" an den Server. (siehe SMTP oder Mail im Internet). Beachten Sie den "Punkt" am Ende auf einer einfachen leeren Zeile und setzen Sie ihre Mailadresse als "rcpt to" ein.

helo testpc
mail from:<>
rcpt to:administrator
data
Subject: Testmail mit x-message-flag
X-Message-Flag: http://www.msxfaq.de ist die beste Webseite der Welt
X-WebTV-Stationery: Standard; BGColor=black; TextColor?=black

Body
.

Der WebTV-Eintrag sorgt dafür. dass der Eintrag nicht auf diesen Systemen angezeigt wird. Es sind sogar mehrere x-message-flag Zeilen möglich.

Allerdings zeigt Outlook dann nur den letzten Eintrag an. Outlook Express soll auch mehrere Zeilen anzeigen. Zusätzlich ist auch in ihrem Posteingang die Nachricht gleich "geflaggt"

Insofern ist die Kennzeichnung schon von einiger Bedeutung und Sie möchten besser kontrollieren, wer hier was wie nutzt.

x-message-flag und Outlook2007

Outlook 2007 schützt den Anwender dadurch, dass diese Flags per Default gar nicht mehr angezeigt werden.

Sie müssen hier also zuerst die "Sperre" entfernen, damit Sie den eigentlichen Text dann lesen können:

Leider ist diese Feld nicht direkt als "Spalte" in Outlook einbindbar

Exchange 2007/2010 Transport Regeln

Seit Exchange 2007 ist es relativ einfach, über entsprechende Regeln auch zentral solche Felder zu setzen. Hier ein Beispiel, um alle externen Mails entsprechend zu kennzeichnen

Damit wird natürlich ein bestehendes Feld von Extern überschrieben.

x-message-flag von extern ?

Insbesondere, da mittlerweile auch Spammer diese Option können und versuchen, ihre Mail als "vertrauenswürdiger" darzustellen. Hier ein real empfangene Mail.

Es ist gut zu erkennen, dass der Headereintrag hinter "X-message-flag" in Outlook angezeigt wird. Man erkennt an der Mail noch einen Fehler des Spammers. Er hat keine Message-ID mitgeliefert, so dass mein Mailserver eine Message-ID erzeugt hat. Diese Mail wäre also sehr einfach als Spam zu erkennen,

x-message-flag verhindern

Also stellt sich die Frage, wie Sie als Administrator die Übermittlung dieser Flags aus dem Internet verhindern können. Und mit Exchange 2000/2003 eignet sich ein Transport EventSink am besten dafür.

xmessageflag.v10.zip Version 1.0
Bitte Downloaden und nach C:\xmessageflag auf dem Exchange Server extrahieren.
Funktioniert nur mit Exchange 2000/2003

In Exchange 2007/2010 kann diese Feld einfach über eine Transportregel ersetzt werden.

Durch Aufruf von "Addxmessageflag.cmd" wird das Skript registriert.

Durch den Aufruf von "Delxmessageflag.cmd" kann das Skript wieder deaktiviert werden.

x-message-flag selbst verwenden

Natürlich eignet sich das Feld auch für eigene Dinge. Basierend auf dem Skript sind eigene Erweiterungen problemlos umzusetzen. So könnten Sie z.B.: die Ergebnisse eines vor geschalteten Spamfilters ebenfalls in einen x-message-flag übernehmen und so dem Anwender einfach anzuzeigen.

Andere X-Flags

Alle Headerfelder, die mit einem "x-" anfangen, sind nicht in einer RFC definiert, sondern Erweiterungen von Programmen. So gibt es jede Menge weitere Flags, die sich unterschiedlich auswirken. Die meisten Mailclients werten diese nicht aus und zeigen sie dementsprechend nicht an. Einige Programme nutzen diese, um die Seriennummer zu hinterlegen und so einen Missbrauch zu erkennen. Andere steuern damit Zusatzinformationen bei.

  • x-alert
    Anscheinend ein Feld, welches verschiedene Programme nutzen. Ich habe hier schon verschiedene Provider gesehen, die dieses Feld mit Inhalt 8z.B.Spamhinweis) setzen
  • x-color
    Damit lässt sich wohl bei dem ein oder anderen Programm die Farbe der Warnung steuern.

Eine Benachrichtigung eines Sharepoint Servers enthält z.B. solche Felder im Header:

X-AlertTitle: =?utf-8?B?R1RTIElzc3VlczogQWxsIEl0ZW1zIChBbGwgQ2hhbmdlcyl=?=
X-AlertId: {51DD8948-4554-4D48-B305-F5E81934FB9F}:{04E2816D-0094-4043-8C9C-D1676EEBF5CA}
X-AlertWebURL: =?utf-8?B?aHR0cDovL2d0cy5zcHMuc2NoYWVmZmxlci5jb21=?=
X-AlertServerType: STS
X-AlertWebSoap: =?utf-8?B?aHR0cDovL2d0cy5zcHMuc2NoYWVmZmxlci5jb20vX3Z0aV9iaW4vYWxlcnRzLmFzbXh=?=

Bei all diesen Feldern muss man aber bedenken, dass Sie als Firma auch einen Risiko ausgesetzt sind, wenn ihre Anwendung diese Felder interpretiert und ein Spammer ebenfalls das Feld schon vorbelegt. Es ist also mit Vorsicht zu betrachten, wenn ihr Virenscanner oder Spamfilter dem Mitarbeiter über solche ein Feld mitteilt, dass die Mail "virenfrei" seit. Stellen Sie sicher, dass diese Felder nicht von extern vorbelegt sein können.

Weitere Links