6. Januar 2008

Webserver-Logfiles direkt in die SQL-Datenbank

Category: Hacking,Work — Christian @ 23:50

Auf meinem Server hier ist Logging ja weitgehend abgeschaltet (zumindest das Access-Log, nicht jedoch das Error-Log). Das hat den Vorteil, Daten die nicht vorhanden sind, muss (und kann) man im Zweifel nicht rausrücken. Der Apache schreibt die Logfiles standardmäßig sowieso nur in eine Datei und die kann man auch gut auf /dev/null verlinken. Dann ist das Log so zuverlässig weg wie die Daten auf einem Windows Home Server.

Manche machen das ja ein wenig anders. Der TÜV Rheinland zum Beispiel. Für den sind die Logfiles offensichtlich so wichtig, dass er sie direkt in eine SQL-Datenbank schreibt. Nicht ganz sauber programmiert zwar, aber das fällt meistens eh nicht nicht auf. Dieser Link (aus dem 24C3 Hacks-Wiki) zeigt das Problem auf. Als PHPSESSIONID einfach „‚UNION‘„übergeben und schon kackt das Logging ab. Ein wundervolles Beispiel für SQL-Injection. Wenn man sich den Sourcecode der Webseite direkt anschaut sieht man ganz unten das Problem:

    „You have an error in your SQL syntax near ‚UNION“)‘ at line 1<br>INSERT INTO accesslog (mandantid, mapid, sprachid, arbeitsbezeichnung, userip, userhost, useragent, referer, zeit, session)VALUES (1, 26, 1, ‚Impressum‘, ‚xx.xx.xx.xx‘, ‚dslb-xxx-xxx-xxx-xxx.pools.arcor-ip.net‘, ‚Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11‘, ‚http://events.ccc.de/congress/2007/Hacks‘, ‚2008-01-06 23:04:33‘, “UNION“)<br>“

Das muss nicht nur die PHPSESSIONID sein, das kann jeder andere Parameter auch sein. SQL-Injection durch einen modifizierten User-Agent beispielsweise 🙂

Der TÜV Rheinland offeriert seinen Kunden übrigens auch Penetrationstests und Software Entwicklung an. Ich würde mich ja schämen, meine eigenen Seiten nicht im Griff zu haben. Und noch peinlicher, das Problem ist mindestens seit einer Woche auf dem Wiki veröffentlicht. Kuckt denn beim TÜV Rheinland niemand in irgendwelche Logfiles?

Aber keine Sorge: wir bieten gerne jedem einen Sonderpreis auf unsere eigenen Penetrationstests an, der vorher den TÜV Rheinland beauftragt hatte und sich nun nicht mehr ganz sicher fühlt. Einfach eine Mail an mich mit dem Hinweis „TÜV Rheinland“ und es gibt 10% auf alle Leistungen 😉

Flash Cookies

Category: Datenschutz,Produkte,Tipps & Tricks — Christian @ 21:22
    LSO, also known as Flash Cookies or Flash Shared Objects, are somewhat nasty: There are persistent across browsers, don’t get deleted on browser exit nor is there an obvious way for viewing and managing them. One possibility is to use NoScript, disable Flash entirely or disable read/write access to the directories where they get stored is another. But I personally find it interesting to see what sites are actually using those cookies for tracking. So a good solution for this specific issue would something to take back control and have an overview over those sites without giving them access to LSOs.There is one simple solution and it is even supplied by Adobe itself: The Flash Player Settings Manager. It’s actually a Flash movie which is able to access the file system and store the settings.I know, it is weird that it resides on Adobes website and it is far from being perfect at all since it would be much nice to have a real interface to it.“

Direkt geklaut von Fukami. Ich kenne niemanden der sich in Deutschland mit Flash besser auskennt. Es lohnt sich, sein Blog und sein Wiki zu lesen.

Aus den Kommentaren: Für Firefox gibt es die Objection Erweiterung, die ebenfalls LSOs bearbeiten kann.