GrundlagenClientsSicherheitsrisiken

(E)SMTP, POP, IMAP

Stichpunkte zum Vortrag für Senioren ans Netz
wie immer völlig grausam designed ;-)
Techniker ! weggucken ! Ihr habt hier nichts verloren, für gesundheitliche Nebenwirkungen beim Lesen der Seite übernehme ich keine Verantwortung ;-).
Die Seite richtet sich an interessierte Anwender des Netzes, nicht an Sysadmins oder Protokoll-fuzzis. Für euch gibts:
dasr bei t-online

Die Grundlagen

RFC 733 21 November 1977
Obsoletes: RFC #561 ,RFC #680, RFC #724
STANDARD FOR THE FORMAT OF ARPA NETWORK TEXT MESSAGES(1)

RFC 822 August 13, 1982
Obsoletes: RFC 733, STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT MESSAGES

Request For Comments: 1855 October 1995
Netiquette Guidelines
Intel Corp. Category: Informational

Request for Comments: 2822 April 2001
Obsoletes: 822
Internet Message Format
QUALCOMM Incorporated Category: Standards Track

uva. vgl.RFC.net


Die eMail - das Killermedium im Internet ?!
Die Türen zur Mail.
POP2 109
POP3 110
SMTP 25
IMAP 143

sichere Ports:
simap (993)
spop (995)

Die eMail-Kommunikation per SMTP läuft zwischen zwei Servern ab. Diese versuchen, sofern es Ihnen erlaubt ist, eine direkte Verbindung herzustellen. Wenn dies nicht gelingt, wird der Zustellversuch einige Zeit später wiederholt. In der Regel wird er nach 24 Stunden abgebrochen, und sie erhalten Ihre Nachricht mit dem entsprechenden Vermerk zurück.

Eine direkte Verbindung kann aber auch über Zwischenstationen erfolgen, sogenannte Gateways. Diese haben nur für das Routing, das Verbinden der beiden SMTP-Rechner Bedeutung. Am gefärdetsten im Bezug auf Abhören und scannen von Mails sind die beiden SMTP-Server

Der Kopf, manchmal mehr Informationenals im Inhalt:
(Sie können auch eine völlige leere e-Mail verschicken)
von wem und wann:
From name@suse.de Tue Nov 6 11:32:05 2001
Bei Antwort - zurück an:
Return-Path: <suse-security-announce-return@suse.com>
über welche Computer lief diese Mail:
die neuesten stehen immer oben
Received heisst empfangen

Received: from lists2.suse.com (lists2.suse.com [202.58.118.7])
by ns18250a.cobalthosting.net (8.10.2/8.10.2) with SMTP id fA6BjH113613
for <suse@hagk.de>; Tue, 6 Nov 2001 12:45:17 +0100
Received: (qmail 6935 invoked by alias); 6 Nov 2001 10:54:31 -0000

Hinweise für beteiligte Programme, hier: ein Mailverteiler
Mailing-List: contact suse-security-announce-help@suse.com; run by ezmlm
Precedence: bulk

X-irgendwas wird immer von dem, der mailt gesetzt. Man darf sich auf solche Header nicht verlassen, sie müssen nicht vorhanden sein.

X-No-Archive: yes
List-Post: <mailto:suse-security-announce@suse.com>
List-Help: <mailto:suse-security-announce-help@suse.com>
List-Unsubscribe: <mailto:suse-security-announce-unsubscribe@suse.com>
List-Subscribe: <mailto:suse-security-announce-subscribe@suse.com>
X-Mailinglist: suse-security-announce
Delivered-To: mailing list suse-security-announce@suse.com
Delivered-To: moderator for suse-security-announce@suse.com
Received: (qmail 1941 invoked from network); 6 Nov 2001 10:32:01 -0000
Date: Tue, 6 Nov 2001 11:32:05 +0100 (CET)
From: Realname oder andere Beschreibung <name@suse.de>

an wen geht die Mail, hier an einen Verteiler, der obige Angaben auswertet
To: <suse-security-announce@suse.com>
Die Mail bekommt eine Identifikationsnummer
diese wird vom sendenden Server gesetzt, ist aber ebenfalls nicht Bedingung

Message-ID: <Pine.LNX.4.33.0111061131210.20107-100000@wotan.suse.de>
hier sehen wir auch gleich, welches Mailprogramm am Werke war: pine (Unix/Linux)

Beschreibung des Inhaltes aus technischer Sicht MIME-Version: 1.0
Content-Type: TEXT/PLAIN;
charset=US-ASCII

eine nur-text-email

der Betreff Subject: [suse-security-announce] SuSE Security Announcement: webalizer (SuSE-SA:2001:040)
X-UIDL: KEQ!!W$""!A5\!!UL("!
Status-Informationen, die der client beim betrachten der Mail verändert
Status: RO
X-Status: O

spoofing - Vortäuschen falscher Tatsachen:

der Mailclient, Z.B. Eudora oder OLE
X-Mailer: HagK s spoofing Mail client on tuxmobil
sagt mein Notebook-Mail-client beime Versenden einer Mail

irgendwelche Tags
X-Info: you show my Mail-source-code
Die x-Tags dienen dem client als Information, er muss sie nicht auswerten
Sie sind sozusagen ein Kommentar der e-Mail

Absicherung eines Mail-Servers:
dieser Host existiert nicht
Diagnostic-Code: X-Postfix; host hagk.de[217.115.140.50] said: 501 5.1.8
<hagk@tuxmobil.home.hagk.de>... Domain of sender address
hagk@tuxmobil.home.hagk.de does not exist

wenn sie http://home.hagk.de oder http://tuxmobil.home.hagk.de in Ihren Browser eintippen, bekommen Sie den Hinweis, das der Server nicht gefunden werden kann. Es ist unwahrscheinlich, dass mein Notebook gerade aus ist. Es gibt auch auf ihm einen www-Server, aber die Namensauflösung klappt nicht.
Wenn Sie in meinem heimischen Netzwerk sich anmelden würden, also Sie mich einmal besuchen ;-), könnten Sie dies so tun, und genau die selben Seiten (und noch mehr) sehen, die auf diesem Server herumliegen.


etwas amüsantes zum Thema Zeichenkodierung

Newsgroups: hamster.de.newuser
Date: 11 Feb 2001 13:07:18 GMT
> Aber wo sind in meinem (alten) Header Sonderzeichen nicht lesbar
> gewesen? Bei mir sah alles ganz normal aus.

Das ist immer das allerschönste Argument - "wieso verstehen die
Eingeborenen im Duk-Duk-Land meine geschliffene lateinische
Begrüßungsrede nicht? Ich verstehe jedes Wort!"

Soll heißen: Wenn dein System seine eigenen Postings nicht verstehen
würde, wäre das traurig. Aber andere können damit Probleme bekommen.

(Irgendwann stelle ich diese Erklärung mal auf meine HP - ich tippe das
jetzt zum vierten Mal in fünf Tagen...)

Ein Zeichensatz besteht aus:

1. ASCII-Zeichen. Das sind im Wesentlichen die Ziffern, die Buchstaben,
ein paar Steuerzeichen und Satzzeichen. Die sind in jedem Zeichensatz
gleich, die Bitfolge 01000001 (dezimal 65) ist immer ein A. ASCII-
Zeichen sind die mit den Nummern 0-127; man nennt sie auch 7bit-
Zeichen, weil für ihre Darstellung nur 7 Bit gebraucht werden. Das
vorderste ist immer auf Null.

2. Sonderzeichen. Das sind ä, ü, é, û, þ, ÿ, ø und so weiter. Die
sind in jedem Zeichensatz anders - die Zuordnung Zeichen - Zahl hängt
also immer vom Zeichensatz ab. Man nennt sie auch die 8bit-Zeichen,
weil sie Werte über 127 haben und daher ihr 8. Bit von hinten (also das
erste) auf 1 gesetzt ist.

Nun hat man sich darauf geeinigt, dass die Kopfzeilen eines Postings
immer und von jedem System auf der ganzen Welt problemlos gelesen
werden können müssen. Das ist aber nur mit ASCII-Zeichen zu machen,
denn sonst müsste man a) immer dazuschreiben, welcher Zeichensatz
eigentlich gemeint ist, und b) müssten die Systeme alle Zeichensätze
der Welt im Kopf haben, um das richtig deuten zu können.

Daher dürfen in den Kopfzeilen nur ASCII-Zeichen stehen, keine Umlaute,
kein ß, Punktum.

Dann kam - und jetzt beginnt der tragische Part - Herr Müller, der
neben einem Herrn Mueller wohnte und mit diesem arg zerstritten war. Er
aergerte (sic) sich maechtig darueber, dass er anstelle seines schoenen
Namens den seines verhassten Feindes einsetzen musste, und verfasste
eine Petition an die oberste Netzverwaltung.

Die Netzverwaltung hatte ein Einsehen, nicht zuletzt weil sich mehrere
Schroeders, Boelgemoellers und Gaertners darunter befanden, die
ähnliche Probleme hatten, von den Fassbinders ganz zu schweigen, und
entwarf, schwuppdiwupp, ein System, das es erlaubte, wie mit einem
Zauberschlage alle Sonderzeichen vor dem Abschicken in ASCII-Zeichen zu
verwandeln und hinterher wieder zurückzuverwandeln, auf dass a) zwar
beim Transport nichts geschehe, aber b) der Absender sich nicht aergern
muesse und c) der Empfaenger ein Empfänger sei.

So schreib Herr Müller freudig "Müller" in den Absender, sein Reader
machte daraus =?iso-8859-1?q?M=FCller?=, was alles ASCII-Zeichen waren,
auf dass kein Server sich müsse ärgern, und schickte dieses ab.

Dieses Posting gelangte zum Reader von Frau Fröhlich, der gar wohl
programmieret war (der Reader natürlich) und angesichts dieses Namens
ausrief: "Oh, was haben wir da? Eine ISO-Kodierung, fein! Verwendeter
Zeichensatz ist ISO-8859-1 - den kenne ich auch, fein!
Kodierungsmethode ist quoted printable, sehr fein! Oh, da steht ein =
hinter dem M, das heißt bei quoted printable: die nächsten beiden
Buchstaben sind keine Buchstaben, sondern der Hexadezimalcode für ein
anderes Zeichen! Da steht FC, also 252, da muss ich (*im Zeichensatz
nachschlag*) ein ü einsetzen! So, liebe Frau Fröhlich, wohl bekomm's!"

Aber auch Herr Gräulich lud sich dieses Posting herunter und sah es
sich mit seinem Reader an. Dieser allerdings (der Reader) war ein
freiberuflicher Agent vom Stamme der Gravitonen und kannte keine
Kodierungen. Herrn Gräulich packte ein heiliger Zorn angesichts des
Postings von Herrn =?iso-8859-1?q?M=FCller?=, den er kaum zu entziffern
vermochte, und packte Herrn =?iso-8859-1?q?M=FCller?= bei den Haaren
und warf Herrn =?iso-8859-1?q?M=FCller?= vor, sein Reader sei
fehlerhaft und produziere Zeichensalat, denn die eigenen Postings von
Herrn Gräulich würden bei Herrn Gräulich immer richtig angezeigt, und
das beweise ja wohl, dass Herrn Gräulichs System korrekt eingestellt
sei, jawohl.

Herr Gräulich übersah, dass er seine Posting mit unkodierten
Sonderzeichen in die weite Welt sandte und es daher für seinen Reader
gar nichts zu dekodieren gab, so dass der Fehler nicht auffallen
konnte.

Zum Glück blieb vielen Angehörigen der Netzgemeinde dieser Flamewar
erspart, weil sie Herrn Gr?ulichs Postings überhaupt nicht zu Gesicht
bekamen - ihr Server nahm nämlich keine technisch defekten Postings
entgegen, ätsch.


=?iso-8859-1?q?Gru=DF?= von
Volker

PS: Dein Subject lautet jetzt =?ISO-8859-1?Q?Re:_Pa=DFw=F6rter?= - fast
in Ordnung (so gut es der Agent kann; ganz in Ordnung wäre es, wenn das
Re: nicht mit in der Kodierung wäre)

PPS: So =?ISO-8859-1?Q?sch=F6n?= hab ich das noch nie hingekriegt. Ich
hoffe, du =?ISO-8859-1?Q?wei=DFt?= das zu =?ISO-8859-1?Q?w=FCrdigen!?=

Anekdoten aus dem usenet: http://best-of-netdigest.de/