E-Mail Spam: Authentifizierung des Absenders

Das E-Mail Spam ein Problem ist, muss ich kaum erzählen. Grundproblem sind die tiefen Kosten für den Versand, vor allem aber die „Offenheit“ von SMTP. Es ist sehr einfach eine beliebige Absenderadresse zu fälschen.

So gibt es viele Vorschläge, wie sich Absender authentifizieren müssten mit dem Ziel Spam zu verhindern. Bei allen Vorschlägen handelt es sich im Kern um DNS-Erweiterungen, die nun in der IETF-Arbeitsgruppe MARID diskutiert werden:

Reverse MX (RMX)

Microsoft Sender ID

Client SMTP Validation (CSV)

Designated Mailers Protocol (DMP)

Designated Relays Inquiry Protocol (DRIP)

Flexible Sender Validation (FSV)

Sender Policy Framework (SPF)

Interessante Fragen sind beispielsweise wie E-Mail-Forwards behandelt werden sollen und ob es für Spammer nicht (zu) einfach ist, gültige Adressen zu beschaffen. Im Grundsatz sind sich die Gruppen auch nicht einig ob es genügt die Header-Daten zu prüfen, oder ob das Mail Envelope geprüft werden muss und zu welchem Zeitpunkt die Prüfung zu erfolgen hat.

Interessiert? Die Links sind oben…

Port Knocking – Wie das Codewort an der Stadtmauer

Bereits das Vorhandensein eines offenen Netzwerkports (z.B. für ftp) lädt zum Ausprobieren und Lauschen ein und ist damit ein potentielles Sicherheitsproblem. Nehmen wir an, wir wollen einen Port für SSH, den wir für Fernwartung benötigen, schützen.

Zuerst schützen wir alle Ports mit einer SW-Firewall (resp. lassen diese zu). Nehmen wir eine LINUX-Kiste an, so schützen wir mit iptables. Somit ist der Rechner von aussen bspw. bei einem Port-Scan „dicht“ und zwar auf allen Ports.

Nun wählen wir eine beliebige Port-Range und lassen einen Port Knock-Server daran lauschen oder genauer gesagt an der Log-Datei der Firewall.

Verbindet nun ein Client zu einer vordefinierte Reihenfolge von Ports, so ist das erfolglos und die Firewall schreibt die Versuche in ihre Logdatei. Diese wiederum wird vom Port Knock-Server mitgelesen. Erkennt der Server ein vordefiniertes „Klopfzeichen“, so öffnet er in unserem Falll den SSH-Port und die „Türe“ für die Fernwartung ist nun offen (und wird nach Gebrauch wieder geschlossen).

Selbstverständlich sollten das Klopzeichen wegen einer Replay-Attacke nicht immer identisch sein. Dagegen tut es bereits ein einfacher Timestamp, doch sind kompliziertere Versionen mit kryptographischen sicheren Sessions-Key beliebig möglich.

Ich finde das genial: www.portknocking.org und ein Artikel im Linux Journal.

Gute Websites: Was ist wichtig

Breitband und (fehlgeleitete, unbrauchbare) Emotionalität zu Trotz: Webangebot bleibt Webangebot.

Die Grundregeln für gute Webangebote sind 1992 von Tim Berners-Lee mal aufgeschrieben worden: Style Guide for online hypertext. Immer noch richtig und gültig!

Meine Favoriten:
Cool URIs don’t change
Structure for the reader
Using standard HTML
Think about printing it

Schneller Download dank Upload

Die Idee ist so einfach: Um an eine Datei zu kommen, so ist es besser nicht nur „runter“ zu laden aber gleichzeitig die „andere“ Richtung der IP-Verbindung zu nutzen. Realisiert im Filesharing von BitTorrent (eine tolle Sache).

Grundzüge der Funktion (vor der Verteilung):

    – Die zu verteilende Datei wird in einem Metafile beschrieben: Dateierweiterung .torrent. Darin wir diese u.a. in Stücke (pieces) aufgeteilt und letztere mit SHA1 überprüfbar gemacht (Beispiel: BitTorrent für Fedora).
    – Auch beschrieben in der Metadatei ist ein zentraler Server, der die Adressliste der verteilenden Clients verwaltet: Der Tracker.
    – Und nun noch der Client genannt Downloader. Ein Downloader der die gesamte zu verteilenden Datei hat wird Seeder genannt. Zu Beginn ist dies ein Einziger.

Grundzüge der Funktion (die Verteilung):

    – Der erste Kunde für den Download gibt seinem BitTorrent-Client die .torrent Metadatei, zugänglich über http.
    – Aufgrund des Inhaltes kontaktiert der Client den Tracker und der gibt ihm eine Liste von Downloadern — die sogenannten Peers (Gleichgesinnte).
    – Von da an ist der Downloader vollständig autonom und kontaktiert seine Peers mit der Bitte für einen Download. Die Summe aller kommunizierenden Downloaders heisst Swarm.
    – Und nun kommt das Wichtigste (und der zentrale Unterschied zu anderen P2P-Protokollen). Als „Belohnung“ für einen laufenden Download startet der Downloader gleich einen Upload zu seinem Peer mit einem Dateifragment, welches dieser noch nicht hat. Der Erfinder Cohen nennt dies tit-for-tat (so wie in der Spieltheorie resp. bei Kindern „wie du mir, so ich dir“).

Das Resultat ist die effizienteste Bandbreiten-Nutzung aller Downloadprotokolle nahe an den Eigenheiten von TCP/IP. Vorausgesetzt die Dowloader bleiben lange am Netz und alle spielen fair mit (dem ist meist nicht so). Verglichen wird diese gegenseitige Optimierung mit dem Optimierungstheorie des Wirtschaftswissenschafters Vilfredo Pareto.

Für den, der die Referenzimpletierung in Phyton nicht mag, gibt es zahlreiche graphische Clients. Der bekannteste (mit schönen Screenies) ist Azureus.

Hier knackig von Bram Cohen beschrieben: [pdf, 80 KB] Incentives Build Robsutness in BitTorrent und ein gutes FAQ.

Mensch oder Maschine?

Der Turing-Test setzt einen Menschen an ein Terminal und dieser muss nach einer Textkommunikation sagen, ob die antwortenden Gegenstellen ein Computer oder ein Mensch ist.

Einen moderne Form davon sind CAPTCHAS: Completely Automated Public Turing Test to Tell Computers and Humans Apart. Dabei geht es um „Rätsel“, die ein Mensch fast immer gut lösen kann aber ein Computer nicht. So beispielsweise der Text auf einer Abbildung mit einer verzerten Schrift. Um in diesem Fall die Accessibility sicherzustellen, werden alternativ auch Audio-Test eingesetzt, so bei Hotmail.

Brauchen tut man CAPTCHA dort, wo Crawler nicht hin sollen. Beispielsweise bei der Anmeldung für einen E-Mail Account bei Yahoo!, bei Online-Abstimmungen oder gegen SPAM u.ä.

Die Frage nun, wie knacke ich ein CAPTCHAS? Der beste Weg — neben einem existierenden Outsourcing in Billiglohn-Länder — ist ein Spiel so wie: „The ESP Game“ (Update: Orignial nicht mehr online, hier die Nachmache). ESP hat zwar „nur“ zum Ziel die 98% der Bilder im Web ohne ALT-Attribut mit Texten zu versehen (über einen witzigen Wettbewerb, bei welchem zwei Mitspieler so lange Worte tippen bis es eine Überstimmung gibt). Dasselbe geht aber für CAPTCHAS… Denkzeit von Menschen über Spiele klauen.

Und hier der obligate Artikel: [pdf, 108k] Telling Humans and Computers apart.

Und hier noch weitere „Streiche“ von Luis: Menschliche Rechenzeit nutzen

Präsentation Top 10 Internet Standards (IEX 2004)

Jedes Jahr wieder an der Internet Expo ein Blick in die milchige Glaskugel. Dieses jahr neu im Angebot:

– Multimodal Interaction
– WAI
– PDF/Acrobat 6
– Blogging und RSS
– Digital Rights Management
– ENUM/E.164
– Anti-Spam
– Google Web API
– Grid Computing
– SOAP 2.0/XMLP

Und hier die Präsi: [pdf, 816 KB] Top 10 Internet Standards 2004

Präsentation Top 10 Internet Standards (IEX 2003)

Jedes Jahr wieder an der Internet Expo ein Blick in die milchige Glaskugel. Dieses jahr neu im Angebot:

– JSP 2.0
– XHTML 2
– Platform for Privacy Preferences
– Watermarking
– C#
– Multimedia Home Platform
– Semantic Web
– WLAN
– XSL-FO
– SVG

Und hier die Präsi: [pdf, 2.2 MB] Top 10 Internet Standards 2003.