Maexotic

It's a maexotic world ...

Bye bye, sueddeutsche.de

Ich mag es nicht so sehr ausspioniert, verstatistikt, vermessen oder gar überwacht zu werden. Und wenn dann will ich wenigstens wissen, was für Daten gespeichert werden und wofür sie verwendet werden. Aus diesem Grund verwende ich in meinem Browser einen mit sehr restriktiven Voreinstellungen versehenen Cookie-Manager, einen Javascript-Blocker und ich lade meinen Seiten über einen lokal installierten squid Proxyserver, den ich mit einem Satz von ACLs ausgestattet haben (eine ständig wachsende Liste). Eine Reihe von ACLs ist für Schnüffler:

[ ... ]
acl webbeacons_dom dstdomain .etracker.com
acl webbeacons_dom dstdomain .etracker.de
acl webbeacons_dom dstdomain .google-analytics.com
acl webbeacons_dom dstdomain .ivwbox.de
acl webbeacons_dom dstdomain .sitestat.com
acl webbeacons_dom dstdomain stats.surfaid.ihost.com
[ ... ]
http_access deny webbeacons_dom

Damit weist der Proxyserver Anfragen an Domains, die dem jeweiligen Muster genügen, mit einer Fehlermeldung zurück, d.h. mein Browser kann nicht mit den Schnüfflern sprechen.

Schon seit recht langer Zeit habe ich den RSS-Feed von sueddeutsche.de abonniert. Aufgrund diverser Umstände bin ich aber seit Mitte August nicht mehr dazu gekommen ihn zu lesen, was ich heute im Schnelldurchlauf nachholen wollte, aber siehe da, es geht nicht mehr:

sueddeutsche.de Access denied

Der Grund dafür ist auch recht schnell in den Logfiles gefunden. Auch wenn die URLs im Feed noch schön brav auf eine Adresse bei sueddeutsche.de zeigen

http://rssfeed.sueddeutsche.de/c/795/f/448324/s/6d832c1/l/0Lde0Bsitestat0N0Csueddeutsche0Csueddeutsche0Cs0D
onclick0Irss0Bfeed0Bmuenchen0Gns0Itype0Fclickin0Gns0Isource0Fnachrichten0Imuenchen0Gns0Iurl0Fhttp0J3a0C0C0S
sueddeutsche0Bde0Cmuenchen0C4650C4928190Ctext0C/story01.htm

lösen Sie eine Weiterleitung aus nach

http://da.feedsportal.com/c/795/f/448324/s/6d832c1/l/0Lde0Bsitestat0N0Csueddeutsche0Csueddeutsche0Cs0D
onclick0Irss0Bfeed0Bmuenchen0Gns0Itype0Fclickin0Gns0Isource0Fnachrichten0Imuenchen0Gns0Iurl0Fhttp0J3a0
C0C0Ssueddeutsche0Bde0Cmuenchen0C4650C4928190Ctext0C/ia1.htm

was wiederum eine Weiterleitung auslöst nach

http://de.sitestat.com/sueddeutsche/sueddeutsche/s?...

und das wird in obigen ACLs geblockt. Es läuft also sogar nicht nur über einen Schnüffler, sondern über deren zwei. Statt aber, wie andere, einen Webbug im Artikel zum Zählen zu platzieren, bekommt man von sueddeutsche.de über den Feed gar nichts, wenn man sich nicht zählen lässt.

Damit kann ich den Feed von sueddeutsche.de jetzt abbestellen. Bye bye!

Dynamic DNS selbst gemacht

Da wir mehrere Linux/Unix-Rechner im Familienumfeld hinter DSL-Zugängen stehen haben und diese betreuen, ist es ziemlich essentiell, diese auch zu finden. Der Standardansatz sind hier sicherlich dynamische DNS-Updates, vor allem, wenn dem Benutzer nicht zugemutet werden will mit der Kommandozeile zu arbeiten oder in der Routerkonfiguration zu navigieren, um die externe IP-Adresse festzustellen.

Es gibt zwar jede Menge Anbieter für dynamische DNS Services, hat man aber - wie wir - eigene Domains und macht auch den DNS Service selbst, so kann man sich den Rückgriff auf diese Anbieter sparen.
Ziemlich verwunderlich finde ich, dass die meisten Hoster, die auch Domainhosting anbieten, nicht ermöglichen, dass man NS-Einträge für die Delegation von Subdomains konfiguriert. Dass sie mit den ganzen dynamischen Updates und dem Key-Management nix zu tun haben wollen kann ich ja aus Gründen der Arbeitslast noch verstehen, aber nicht mal NS-Records per Interface?

Nachfolgend eine kleine Anleitung ...

Continue reading "Dynamic DNS selbst gemacht"

Logfileauswertung - und die Security bleibt auf der Strecke

Ich interessiere mich gerade für Webtraffic und Spiders und bastele dazu an einem "realtime Monitor", den man auf das Logfile des Webservers ansetzen kann. Passend dazu kam gestern über FriendFeed ein Link von Charleno Pires zu einem Artikel bei IBM developerWorks® mit dem Titel "Working with Web server logs" in python.

Wenig erstaunlich macht der Autor Uche Ogbuji erst einmal einiges recht ähnlich, doch im zweiten Teil des Artikels nimmt er die Daten und packt sie in Webseiten zur Darstellung. Dabei macht er einen kapitalen Fehler und übernimmt alles ungeprüft. Da die Daten zu "localpath", "referrer", "user-agent" und natürlich auch zu "ident" oder "cookie" vom Client kommen, kann da ziemlich Übles drinstehen (was den Server beim Loggen auch gar nicht interessiert), wie z.B. Folgendes, was sich letzt' in einem meiner Logfiles fand:

a.b.c.d - - [25/Sep/2009:20:42:21 +0200] "HEAD / HTTP/1.1" 200 - "<script>alert(new Date());</script>" "Foxconn D910.0.3.53 FS_D910.0.2.48_DTC"

Wie man sieht, wurde hier - statt einer URI - im Referrer-Feld Javascript-Code übergeben. Übernimmt man diesen nun ungeprüft in eine Webseite mit einer Referrer-Auswertung, so wird beim Betrachten mit aktiviertem Javascript ein Popup mit der aktuellen Uhrzeit aufgehen.

Neben diesem eher sehr harmlosen Beispiel gehen damit auch andere Sachen, bis hin zu übelsten XSS-Angriffen.

Das Problem ist aber nicht nur auf Darstellung im Web/HTML beschränkt, auch mit einer reinen Textdarstellung in einer ANSI/VTxxx kompatiblen Konsole (xterm, putty, ...) lassen sich Logfile-Einträge überschreiben, indem die Darstellung mit entsprechenden Steuersequenzen manipuliert wird. Manche Terminal-Emulationen erlauben sogar die Modifikation der Cut-Buffer und/oder Funktionstasten, andere haben Funktionen für Record und Playback für Macros.

Generell gilt immer:

Nichts, was das Internet anliefert, ist vertrauenswürdig.

Nominum startet Skye cloud DNS service

Nominum, eine private Firma, in der sich so illustre Namen wie Paul Mockapetris, Paul Vixie, Ted Hardie oder Stephen Stuart zusammenfinden, wurde gegründet um BIND9 und DHCP3 für das Internet Systems Consortium (ISC; damals noch Internet Software Consortium) zu entwickeln. Mittlerweile haben sie eine komplett eigenständige Lösung für DNS entwickelt.

Vor einiger Zeit gab es nun eine Pressemeldung über den Launch von Skye und dazu ein Interview auf ZDNet UK mit Jon Shalowitz von Nomium unter dem Titel "Why open-source DNS is 'internet's dirty little secret'".

Einerseits ist es ganz amüsant zu lesen, was Jon Shalowitz für einen Blödsinn über Freeware/Open Source Software erzählt und sich damit zum Affen macht, indem er mit der Mär von der unsicheren Open Source Software argumentiert. Im Gegensatz zur viel älteren Freeware Lösung djbdns von Dan J. Bernstein oder anderen OSS Lösungen wie MaraDNS oder powerDNS, waren die Nominum DNS Server vom UDP Port Prediction [2] Angriff und damit verbundenem Cache Poisoning durchaus betroffen.

Andererseits erzählt er über wirklich bedenkliche Ansätze, die Nominum mit Skye verfolgt:

If you use as an example NTT, one of our customers in Asia — we can quickly detect a worm outbreak or a botnet outbreak, because of what we see in the DNS. Then we can use that information to shut down a lot of those communication lines that that command centre, that botnet, may use. We can apply that worldwide across our entire installed base.

Nominum macht die feuchten Träume aller Internet-Zensoren wahr:

"Auf Knopfdruck knipsen wir beliebige Domains aus"

Aber das ist natürlich eine schlechtere PR-Aussage als "wir schützen euch alle" (ob ihr wollt oder nicht).

DNS, Mail, DNSxLists und blutige Amateure

Letzt' habe ich geholfen einen hoffnungslos mit Spam-Angriffen überrannten Mailserver wieder einigermassen produktiv zu bekommen.

spamassassin und clamav mögen ja nette Tools sein und auch einiges an Spam und Viren oder Malware im allgemeinen wegsortieren, ist aber der Rechner an der Grenze seiner Leistungsfähigkeit angekommen, muß man (sollte man eigentlich immer) viel früher anfangen diesen Müll abzuweisen. Dies hat zudem den großen Vorteil, dass man Backscatter vermeidet, weil die Spam-Zombies keine NDNs generieren.

Reputation ist alles


Kein Name, keine Reputation

Einer der ersten Schritte, den ich diesbezüglich immer gehe ist, dass ich alle Verbindungen sofort abbrechen lasse, wenn sie von Rechnern kommen, die keinen Eintrag im reverse DNS haben.
Ein anständiger und von verantwortungsvollen Admins verwalteter Mailserver wird einen korrekten Eintrag im DNS haben. Wenn - aus welchen Gründen auch immer - das nicht so ist, dann ist das nicht der Fehler der Empfänger, sondern der der Admins des Versenders und nicht die Empfänger müssen dafür geradestehen und trotzdem versuchen es irgendwie noch hinzubiegen. Dies gilt umso mehr, wenn sie dabei in Kauf nehmen müssten, dass sie auch von 100 Millionen Zombies Mail annehmen, nur weil die Admins der Versender es nicht raffen.
Das hat schon mal 30-50% der Angreifer ausgeschaltet, einen Großteil der Last vom Rechner genommen und bringt connection slots, weil diese Verbindungen nicht mehrere Sekunden oder gar Minuten eine SMTP-Verbindung blockieren.

Verbinden Sie sich mit Ihrem guten Namen

Nachdem alle Verbindungen mit namenlosen Hosts unterbunden sind, sortiert man 08/15 Namen aus (sprich Zombies hinter DSL/broadband, für die der ISP einen Namen eingetragen hat).
Da im allgemeinen der ISP einen Überblick darüber hat wie er die ihm zugeteilten Adressen/Netzbereiche verwendet, ist die Klassifizierung über Namen prinzipiell einer Klassifizierung über reine IP-Adreßbereiche vorzuziehen. Manchmal ist dies auch recht angenehm und schnell gemacht, wenn der ISP bei der Namensgebung mitspielt und eine entsprechende Hierarchie verwendet:

.dynamic.163data.com.cn
.broadband.corbina.ru
.dynamic.jazztel.es
.dsl-dynamic.vsi.ru
.dial.nortenet.pt
.pppoe.avangard-dsl.ru

Hier haben die Admins verstanden, wie DNS funktioniert: hierarchisch und von rechts nach links. Derartige Domains kann man leicht sowohl in lokalen Konfigurationen als auch in DNSBLs konfigurieren und das matching geht schnell und unkompliziert. Natürlich will man nicht nur Blacklists, sondern (z.B. im Falle von greylisting) auch Whitelists haben, und auch hier gibt es positive Beispiele:

.mail.uk.clara.net
.mail.kks.yahoo.co.jp
.mail.interoute.net
.mail.uu.net
.mail.gandi.net

Auf diese Art und Weise kann man mit einem einzelnen Eintrag eine ganze Reihe von Mailservern freischalten. Ja, ACLs nach Namen sind unsicher, es sei denn man verwendet ein "paranoid" setting.

Die "blutigen Amateure"

Neben obigen positiven Beispielen, gibt es auch jede Menge Beispiel dafür, dass offensichtlich die Leute nicht kapiert haben, wie DNS funktioniert. Interessanterweise sind auch jede Menge "Checker-Firmen" darunter, von denen man das eher nicht erwartet. Hier einige Beispiele:

mail-yw0-f147.google.com
mail-bw0-f206.google.com
outbound-mail-49.bluehost.com
mail22.infracom.nl

static-nnn-nnn-nnn-nnn.netcologne.de
ip-95-223-70-58.unitymediagroup.de
ppp-77-234-231-97.dsidata.sk
rev.193.226.199.13.euroweb.hu
host219-46-dynamic.21-87-r.retail.telecomitalia.it

Die haben es alle nicht kapiert. Entweder es gibt gar keine Hierarchie oder sie drehen innerhalb ihrer Domain die Hierarchie um von links nach rechts. Zur Verdeutlichung wollen wir einmal zwei Namen gegenüberstellen:

static-<a>-<b>-<c>-<d>.example.com
sys-<n>.example.com

Beides sind Namen von Rechnern, die Verbindungen per SMTP aufbauen. Das eine ist ein Kundensystem, das Spam verteilt, das andere ein (interner) Mailserver.
An dieser Stelle sollte ich wohl explizit erwähnen, dass dies exemplarisch ist und das erste von hunderten von Beispielen, die ich gefunden habe. Es geht nicht darum irgendwen im speziellen zu "bashen".
Der gemeinsame Domainanteil dieser Hosts ist .example.com. Damit wird das Problem deutlich. Will man nicht mit kompliziertem pattern matching arbeiten, sondern einfache RTL-Hierarchien verwenden, hat man hier verloren. Dies gilt im speziellen auch für DNS{B,W}Lists.

Und bevor jetzt jemand kommt und sagt: "Ich will aber lieber mail22 tippen als h22.mail!" - dann tragt euch doch einen CNAME ein oder verwendet Host und Hostname für die ssh.

Schwellkörper

Um einen Lichtschalter zu tauschen, mußte ich am Freitag die Hauptsicherung entfernen. 10 Minuten später lief wieder alles. Alles? Nein, unser Server lief nicht. Der unbeugsame Rechner war durch nichts dazu zu bewegen auch nur einen Mucks zu machen (ja er war heruntergefahren und ausgeschaltet, bevor ich den Strom aus gemacht hatte). Leider hatte ich erst heute Zeit mich ausgiebiger mit dem Rechner zu beschäftigen. Nachdem das Netzteil in einen anderen Rechner anlief und die Standby Spannung vohanden war und eine Überbrückung des Stromschalters am Mainboard auch nichts half, habe ich Stück für Stück die Hardware entfernt. Zum Schluß war das Mainboard komplett nackt. Nach dem Ausbau und einer genauen Inspektion fand ich das:

geschollener Elko

Der Elko sieht noch nicht so krass aus wie bei diesem Foto in der Wikimedia, aber schlimm genug, um ihm erst einmal die Schuld zu geben. Mal sehen ob ich jemanden finde, der mit einem Lötkolben umgehen kann. :-D

Ich bin zwar in keinster Weise elektrotechnisch begabt, aber ist das schlau, so einen Elko direkt neben den Kühlrippen der Heat Pipe zu platzieren? Ich würde denken nein.

Ja war denn scho' wieda Fasching

Dirndl in Animal Crossing City Folk / Let's Go to the CityDie Wiesn ist vorbei. Und endlich sind sie dann auch wieder verschwunden, die Zillionen von Daherg'laufenen und Zuag'roasten, die sich für ihren Wiesnauftritt verkleidet haben.

Doch nicht nur auf der Wiesn selbst ist das verkleiden "in", auch die Lufthansa ist sich nicht zu schade die Flugbegleiterinnen übelst zu verunstalten. Es verwundert nur, dass dies nicht auf der Website unter "Inflight Entertainment" aufgeführt wird. Selbst Nintendo ließ es sich nicht nehmen den Spielern von Animal Crossing ein Dirndl als Download anzubieten (siehe Bild).

Um es gleich vorwegzunehmen, ich habe nichts gegen Tracht und auch nicht gegen Dirndl (was ja strenggenommen nicht wirklich Tracht ist) oder die diversen Verkleidungsversuche der männlichen Vertreter. Was einem aber auf der Wiesn diesbezüglich geboten wird (neben den vielen roten Nasen) ist schon krass.

Nachdem wir schon bei Frau B. ansatzweise darüber diskutiert hatten, gebe ich diesbezüglich auch noch meinen (keineswegs süßen) Senf dazu.

Ich will nicht ungerecht sein, es gibt jede Menge geschmackvolle Dirndl und Outfits für Männer. Aber:

  • wenn man keinen Hintern in der Hose hat und auch sonst nichts was die Lederhosen hält, sollte man sich überlegen einen Gürtel oder Hosenträger zu tragen. Lederhosen saggy style ist gar nicht hip (und auch nicht hop). Und auch T-Shirt zur Bux geht absolut nicht.
  • (ausgelatschte) Turnschuhe zu Lederhosen oder Dirndl geht gar nicht. High Heels auch nicht.
  • Mini-Dirndl kann nicht jede tragen. Kniehohe Fickmich-Stiefel dazu komplettieren den Billig-Look, ist aber vielleicht für die Kontaktanbahnung hilfreich.
  • nicht alles was nach Dirndl ausieht ist auch eines. Osteuropäische Trachten gehen vielleicht bei ebay recht billig her, schauen jedoch total fehl am Platze aus.
  • unter ein Dirndl gehört eine Bluse. Wenn Giulia Siegel glaubt sie weglassen zu können und so greislich rumzulaufen, heißt das nicht, dass das ein folgenswerter Trend ist.
  • wenn das Dirndl zu kurz ist und das Wetter eher frisch, ist eine lange Leggins drunter nicht die modische Lösung.
  • Dirndl aus Chifffon und durchsichtige Schürzen: nein.
  • Bergstiefel? wenn es sein muß und wenn man das Gewicht rumschleppen will. Haferlschuhe sind dem Anlass entsprechend und wiegen weitaus weniger.

Und dann durfte ich noch diesem Kurzdialog in tiefstem Sächsisch lauschen:

F1: "Die Schackeline hat gesagt, dass Du gar nicht so gerne auf die Wiesen gehst!"
F2: "Das stimmt nicht. Seit ich das Dirndel habe, gehe ich sehr gerne auf die Wiesen."

Trotz schlimmster Befürchtungen waren die beiden aber richtig fesch (die Deandl und die Dirndl). :-D

Ein paar Impressionen dazu hat auch die Süddeutsche in Form von Bilderstrecken: Schlimmer geht's nimmer und München Alaaf!