keksklau, blöde käfer und die pinnwand

November 16th, 2010 § 1 comment § permalink

Vor einem Monat wurde die Uni-Pinnwand unfreiwillig auf das private Blog einer recht bekannten Person umgeleitet.

Hier nun ein kleiner Erklärbär-Post zur Pinnwand-Sicherheit und ein wenig Web-Security im Allgemeinen:

Disclaimer: Die Informationen dazu sind seit Jahren bekannt und niemand möchte der Universität schaden oder hat wirklich Cookies geklaut. Es ist aber teilweise einfach zu einfach und viele Fehler tauchen im Netz immer wieder auf oder man begeht sie selbst wenn man Webseiten bastelt (ist immer einfacher als man denkt ;)

Daher hier einmal die beiden (bislang bekannten und bereits gefixten) Bugs in der Piazza etwas erklärt:

Bug #1: HTML-Injection

Möglich geworden ist dies durch eine XSS-Lücke. Der Titel eines Beitrages wurde auf der Übersichtsseite nicht korrekt escaped. 1

Das klingt auf den ersten Blick recht harmlos. In Verbindung mit JavaScript ergeben sich aber unendlich viele Möglichkeiten Spass zu haben oder eben auch "böse" Dinge zu tun. Mit JavaScript hat man Zugriff auf den kompletten DOM einer Website und kann normalerweise 2 auch Cookies auslesen oder Asteroids mit den Elementen der Website spielen 3.

Cookies sind vor allen Dingen interressant, weil damit Sessions authentizifiert werden. Wer es noch nicht kennt: Firesheep demonstriert recht beeindruckend, dass man oft nur den Cookie stehlen muss um eine Session zu stehlen.

Zum Glück hat das SCC seine Hausaufgaben hier gemacht und das Vorlesungsverzeichnis (mit den Noten der Studenten) nutzt httponly-Cookies 2 und ist damit (mit modernen Browsern) nicht angreifbar. Aber das TYPO3-Backend der Uni nutzt diese z.B. nicht.

Wie würde denn ein Angreifer mit bösen Absichten Session-Cookies stehlen?

Hier hilft wieder JavaScript. Cookies und JavaScript haben 2 verschiedene Sicherheitskonzepte. JavaScript hat eine sog. Same-Origin-Policy. D.h. man hat nur Zugriff auf Objekte der Domain in der das JavaScript ausgeführt wird.

Cookies haben zusätzlich zur Same-Origin-Policy noch einen Cookie-Path d.h. der Browser sendet nur Cookies an eine bestimmte Unterseite, wenn diese im Cookie-Path steht.

Dank JavaScript ist es aber kein Problem dies zu umgehen:

Man muss nur die Seite von der man die Cookies stehlen möchte in einen z.B. 1x1 Pixel großen <iframe> öffnen und kann dann über die JavaScript Funktion document.cookie den gewünschten Session-Cookie auslesen und unbemerkt weiterleiten.

Damit ist es dem Angreifer dann möglich sich als User zu authentifizieren.

Um das mal am Beispiel der Pinnwand zu illustrieren:

Person XY ist im TYPO3-Backend der Universtät eingeloggt und besucht die Pinnwand-Seite, dort ist ein verstecktes JavaScript in einer Nachricht, welches die TYPO3-Seite im Browser von Person XY in einem unsichtbaren (oder sehr kleinen) <iframe> öffnet, den Session-Cookie stielt und an den Angreifer weiterleitet.

Dieser kann sich nun selbst im TYPO3 einloggen in dem er den Cookie in seinen Browser einträgt.

Bug #2: Authentifizierung umgehen

Bis vor 3 Wochen konnte man ohne Passwort-Abfrage und ohne Freischaltung unter jeden Namen auf der Pinnwand Beiträge verfassen.

Die XSS-Lücke hat die Neugier geweckt und man kann sich ja mal den HTML-Quellcode ansehen und beobachten wie die Pinnwand funktioniert.... erstaunliches trat zu Tage:

Zur Erklärung: Dinge die man in Browser-Eingabekästchen eintippt werden gewöhnlich durch <form> und <input> Tags beschrieben. Beim Klick auf "Beitrag veröffentlichen" sendet der Browser in einen POST-Request die Daten an die URL die in dem Form-Tag angeben ist.

Auf der "Beitrag-Verfassen"-Seite wurde schon immer ein ein Passwort mitgesendet und überprüft. So weit so gut...

Nach der Verfassen-Seite kommt die Vorschau-Seite. Dort gibt gab es wieder ein Formular welches abgeschickt wird:


<form method="post"
action="https://www.uni-weimar.de/cms/index.php?id=2456" id="insert"
accept-charset="ISO-8859-1, ISO-8859-2">
<fieldset>
<input type="hidden" name="user" value="HIER EINEN
UNI-LOGIN EINTRAGEN">
<input type="hidden" name="titel" value="Titel des Posts">
<input type="hidden" name="inhalt"
value="Inhalt+vom+Post+urlencoded" />
<input type="hidden" name="datum" value="2010-10-20">
<input type="hidden" name="zeit" value="14:30:00">
<input type="hidden" name="dauer" value="1h">
<input type="hidden" name="intern" value="">
<input type="hidden" name="gast" value="">
<input type="hidden" name="pin_rubrik" value="11">
<input type="submit" value="Beitrag veröffentlichen"
name="insert">
</fieldset>
</form>

Na - fällt etwas auf? Hier gibt gab es kein Passwort-Feld. Und die URL an welche die Daten gesendet werden ist auch eine andere.

Blöd nur, dass HTTP zustandslos ist. Dementsprechend interressiert es weder den Browser noch die Website ob man sich vorher schon erfolgreich authentifiziert hat...

...basteln wir uns also eine kleine HTML-Datei, welche die Daten hinschickt und ändern wir den Eintrag im user=-Feld.

Huch. Da ist ein neuer Beitrag auf der Piazza ohne Passwortabfrage von einer anderen Person. In das Feld für den Namen konnte man eintragen was man möchte.

Jetzt können wir also alle unliebsamen Vorlesungen absagen und in Bernds Namen trollen. m(

Wer selbst eine Lücken finden sollte: Bitte der SCC Security Hotline melden: security@scc.uni-weimar.de. Die kümmern sich dann darum.

Und hier gibt es einen gutes Tutorial zur Sicherheit von Web-Anwendungen.

Anmerkungen

[1] Escaping ist das Umwandeln von Sonderzeichen wie < > in entsprechende HTML-Codes, so dass der Browser sie nicht mehr ausführt. In PHP z.B. mit htmlspecialchars() machbar.

[2] Da es das Problem des Cookie-Diebstahls schon sehr lange gibt wurde mit Internet Explorer 6 SP1 (2002) das httponly-Flag eingeführt. Damit wird verhindert, dass JavaScript- sowie AJAX-Funktionen Zugriff auf derart gesicherte Cookies haben.

[3] Einfach das Codeschnippsel in die Adresszeile kopieren mit den Pfeiltasten navigieren und mit der Leertaste ballern:

javascript:var%20s%20=%20document.createElement('script');
s.type='text/javascript';document.body.appendChild(s);
s.src='http://erkie.github.com/asteroids.min.js';void(0);

Unser RZ sperrt den yacybot

Februar 5th, 2010 § 4 comments § permalink

"Faschisten, Nazi-Schweine!", schreit ed, noch bevor er das Flammenschwert richtig ziehen und googlen konnte, ob er denn überhaupt richtig liegt. Nach dem wm zarghaft klein ed ins Gewissen geredet hat, doch erst einmal zu überprüfen ob 'yacybot' und 'yacy' das gleiche wären und doch eigentlich erst das SCC zu fragen: "Warum eigentlich?"

Ja warum eigentlich schließt das SCC den yacybot von den Inhalten der Universitäts-Seite aus? Wie man es unschwer in der robots.txt nachlesen kann.

Da ed so das öffentliche pöbeln auf der Pinnwand des SCC oder der Piazza untersagt wurde, ergriff ed die Gunst der Stunde um die Redefreiheit dieses Blogs unter Beweis zu stellen!

first 'hackers cinema' – eine kurze auswertung

Oktober 22nd, 2009 § 1 comment § permalink

Heute Abend fand das erste 'hackers cinema' im Maschinenraum statt. Vielen Dank an dieser Stelle an Junior Prof. Ben Sassen (Fakultät Gestaltung) dass er uns durch seine Betreuung diese Veranstaltung ermöglicht!
Es wurde im noch recht kleinen Kreis von ca. 15 Personen der erste Teil "Welt am Draht" (1973) gesehen und im Anschluss heißer und länger diskutiert als anfangs erwartet. Die Themen kreisten nicht nur um die Frage der Definition nach Realität und Wirklichkeit und der Problematik eines objektiven Standpunktes des Subjekts, welches sich in einem relativen Raum befindet, es wurde auch den "nicht-hackern" die Theorie von Virtualisierung, Generischen Algorithmen und anderem Voodoo nahe gebracht. Gerade durch durch die Mischung von MedienSystemen, MedienKultur und MedienGestaltung entstand ein spannendes Diskussionsumfeld.
Diese Gäste werden wir sicherlich wieder sehen und freuen uns natürlich über weiteren Zuwachs im Laufe des Semesters.

Heute Abend fand das erste 'hackers cinema' im Maschinenraum statt. Vielen Dank an dieser Stelle an Junior Prof. Ben Sassen (Fakultät Gestaltung) dass er uns durch seine Betreuung diese Veranstaltung ermöglicht!

Es wurde im noch recht kleinen Kreis von ca. 15 Personen der erste Teil "Welt am Draht" (1973) gesehen und im Anschluss heißer und länger diskutiert als anfangs erwartet. Die Themen kreisten nicht nur um die Frage der Definition nach Realität und Wirklichkeit und der Problematik eines objektiven Standpunktes des Subjekts, welches sich in einem relativen Raum befindet, es wurde auch den "nicht-hackern" die Theorie von Virtualisierung, Generischen Algorithmen und anderem Voodoo nahe gebracht. Gerade durch durch die Mischung von MedienSystemen, MedienKultur und MedienGestaltung entstand ein spannendes Diskussionsumfeld.

Diese Gäste werden wir sicherlich wieder sehen und freuen uns natürlich über weiteren Zuwachs im Laufe des Semesters.

Bauhaus-Uni VPN unter OS X 10.6 (Snow Leopard)

Oktober 14th, 2009 § 2 comments § permalink

Liebe Macuser_innen an der Bauhaus-Uni Weimar!

Vor kurzer Zeit erschien das „große“ Betriebssystem-Update von Apple, OS X 10.6 (Snow Leopard). Da der Cisco VPN Client, den die Uni zum Download anbietet, nicht mehr unter 10.6 funktioniert, muss nun eine andere Lösung her. Gar nicht schlimm, denn der benötigte Cisco-Code wurde von Apple fest ins neue Betriebssystem integriert und der olle Cisco-Client war sowieso überaus hässlich. Hier steht wie’s geht:

1) Klicke auf den kleinen Apfel oben links am Bildschirm und wähle „Systemeinstellungen…“. In dem sich öffnenden Fenster klicke auf „Netzwerk“.

2) Füge durch einen klick auf die Schaltfläche „+“ links unten im Fenster einen neuen Dienst hinzu.

3) Wähle folgendes aus:
Anschluss:  VPN
VPN-Typ:    Cisco IPSec
Dienstname: Frei wählbar, z.B. UNI-VPN Intern

4) Gib nun die entsprechende Serveradresse für den Dienst den du einrichten möchtest ein:
VPN Intern: 172.18.254.252
VPN Extern: vpngw2-out.net.uni-weimar.de
VPN Bode:   vpngw2-out.net.uni-weimar.de

5) Als Accountname trage deinen Benutzernamen von der Uni ein (z.B. abcd1234). Lasse das Feld Passwort leer.

6) Klicke auf Identifizierungseinstellungen und wähle „Schlüssel“. In das nebenstehende Feld tippst du:
VPN Intern: v2oeff
VPN Extern: v2intern
VPN Bode:   v2bode

7) In das Feld Gruppenname kommt folgendes:
VPN Intern: GROUP-WLAN
VPN Extern: GROUP-EXTERN
VPN Bode:   GROUP-BODE

8) Klicke auf „OK“ und dann rechts unten auf „Anwenden“. Fertig! Jetzt kannst du dich über das neu erschienene Symbol in der Menuleiste mit dem Uni-VPN verbinden. Dein Passwort musst du erst beim Verbinden eingeben. Und alles ohne Vorher irgendwelche hässlichen Programme starten zu müssen!

/////////////////////////////////////////////////////////

Hier nochmal alle Zugangsdaten auf einen Blick:

VPN Intern
Serveradresse: 172.18.254.252
Shared Secret: v2oeff
Gruppenname:   GROUP-WLAN

VPN Extern
Serveradresse: vpngw2-out.net.uni-weimar.de
Shared Secret: v2intern
Gruppenname:   GROUP-EXTERN

VPN Intern
Serveradresse: vpngw2-out.net.uni-weimar.de
Shared Secret: v2bode
Gruppenname:   GROUP-BODE

/////////////////////////////////////////////////////////

So long,
Padde

Die Raubkopie

Juni 5th, 2009 § 0 comments § permalink

scheint für das frühe 21. Jahrhundert etwas ähnliches zu sein, wie der Kommunismus für das frühe 20.. Ein Gespenst das umgeht in Europa – bzw. dem Internet (Quelle).

Es gibt Menschen, die haben diesbezüglich vollkommen andere kulturelle Praktiken als andere. Die einen glauben noch daran, dass es gerechtfertigt ist, dass sie durch den Verkauf der Musik anderer Menschn reich werden. Die Anderen tauschen Musik gerne mit ihren 2.000.000 engsten Freunden (wissenschaftliche Quelle, PDF, S. 14). Letztere Praxis macht der ersten Gruppe ganz arg viel Angst. Das hat meistens etwas damit zu tun, dass sie einfach nicht verstehen wollen, dass sie in Eishäuser investiert haben.

Die Menschen, die immer noch den irrigen Glauben vertreten, dass sie Dateien behandeln können wie tote Bäume oder silberne Plastikscheiben, haben da so sehr viel Angst davor, dass sie sogar die wissenschaftliche Auseinandersetzung und/oder Aufklärung mit/über das Thema "Raubkopie" unterbinden müssen. Das ist schon reflexartig bei denen, hat also nichts mit denken zu tun.

So hatte ein Kommilitone einen freundlichen Hinweis auf das auch im Internet erschienene Buch NO COPY auf der Pinnwand Medien der BU-W veröffentlicht. Bei dem Buch handelt es sich um eine fundierte Beschreibung der Geschichte und aktuellen Realität der digitalen Kopie (die ja auch als Raubkopie bekannt ist).

Dieser Beitrag wurde von mehreren Menschen gelesen. Leider wurde die intendierte Wirkung bei den meisten LeserInnen vollkommen verfehlt. Da setzte dann halt der Anti-Raubkopier-Reflex ein und der Beitrag wurde gelöscht. Also ich mein' das sind Menschen, die länger brauchen um auf einen Hinweis zu reagieren, dass sich auf ihrer Piazza echte Idioten rumtreiben (Link, sollte der endlich gelöscht sein: Screenshot).

Ich glaub' ich will schon wieder das Denken einstellen und gegen meinen Brechreiz kämpfen.

Dass der Raub der Diebstahl mit mindestens Nötigung ist, Diebstahl was mit Dingen zu tun hat und Dateien keine Dinge sind und niemand genötigt wird Dateien über Netzwerke auszutauschen weshalb allein der Begriff der Raubkopie nur dumm ist schreib' ich hier auch nur hin, weil das ist so'n Aufklärungsreflex von mir.

Where Am I?

You are currently browsing the Uni category at maschinenraum.