Handbuch

Level 0001: Versteckspiel

Kategorie grundlagen
Stufe 1
Punkte 1

Beschreibung

Der Entwickler dieser Seite hat es im Vertrauen worauf auch immer versäumt, den Administratorbereich seiner Seite zu schützen. Indem Sie die URL erraten, erlangen Sie administrativen Zugriff auf die Seite.

Hinterlassen Sie eine beliebige Neuigkeit auf dieser Seite, um dieses Level abzuschließen.

Hinweise

In den meisten Fällen ist der Administrationsbereich einer Website, ausgehend vom Hauptverzeichnis der Seite, über eine Datei oder ein Unterverzeichnis erreichbar.
Der Name dieser Datei oder dieses Verzeichnis ist in der Regel zweckgebunden, zum Beispiel erreicht man den Administrationsbereich einer Wordpress-Installation über das Unterverzeichnis wp-admin, das Content-Management-System Joomla können Sie über das Unterverzeichnis administrator administrieren.

Verbirgt sich der Administrationsbereich hinter einer Datei, so handelt es sich dabei meist um ein Serverskript. Die Dateiendung lautet dann beispielsweise bei einer mit PHP generierten Webseite in aller Regel .php.

Level 0002: Passwortdieb

Kategorie grundlagen
Stufe 1
Punkte 2

Beschreibung

Dieser Webchat ermöglicht es seinen Benutzern, die Daten ihres Profils auf der Einstellungsseite anzuzeigen.

Allerdings hat der Betreiber bei der Umsetzung ein wenig geschlampt und so ist es nicht nur möglich, die eigenen Daten anzuzeigen, sondern auch, die Daten fremder Benutzer.

Loggen Sie sich als Administrator im entsprechenden Bereich ein, um dieses Level zu absolvieren.

Hinweise

Im eingeloggten Zustand können Sie über die Schaltfläche Einstellungen Ihre eigenen Daten anzeigen lassen. Dabei erkennen Sie sicher sehr schnell das Prinzip, nach dem Daten eines beliebigen Nutzers angezeigt werden können.

Einige der registrierten Benutzerkonten sehen Sie bereits in Ihren Kontakten. Indem Sie die Nutzernamen dieser Personen anstelle Ihres eigenen verwenden, sind Sie theoretisch in der Lage dazu, die Daten dieser Benutzer anzuzeigen.

Sie werden jedoch bemerken, dass das System von Ihnen einen Login fordert, um die gewünschten Daten anzuzeigen. Das müssen Sie umgehen. Das Vorgehen dabei beruht auf einem Exploit, das durch die Aktivierung der Option register_globals in PHP entsteht.

Wenn Sie auf diesem Weg die Daten eines Administrators ermitteln haben, müssen Sie nur noch den versteckten Administrationsbereich finden und sich mit den gestohlenen Daten einloggen, um das Level abzuschließen.

Level 0003: Wörterbuchattacke

Kategorie brute-force
Stufe 2
Punkte 2

Beschreibung

Um mehr über Ihr Angriffsziel zu erfahren, wollen Sie interne Informationen herunterladen. Sie haben bereits ermittelt wo eine Datei namens Webkonzept.pdf gespeichert ist, allerdings ist diese Datei durch ein Passwort geschützt.

Knacken Sie dieses Kennwort mithilfe einer Brute-Force-Attacke, um dieses Level abzuschließen. Die Datei Webkonzept.pdf wird Ihnen in späteren Levels, wenn Sie diese benötigen, zur Verfügung stehen.

Hinweise

Eine Brute-Force-Attacke, die wie hier über das Netzwerk abgewickelt werden muss, scheitert meist an dem Flaschenhals des Netzwerkes. Aus diesem Grund sollten Sie von einer vollständigen Brute-Force-Attacke absehen und stattdessen einen Wörterbuchangriff durchführen.

Bedenken Sie auch, dass die Passwörter dieser Seite von einem deutschsprachigen Mitarbeiter angelegt wurden.

Level 0004: Wörterbuchattacke

Kategorie brute-force
Stufe 2
Punkte 2

Beschreibung

Um mehr über Ihr Angriffsziel zu erfahren, wollen Sie interne Informationen herunterladen. Sie haben bereits ermittelt wo eine Datei namens Webarchitektur.pdf gespeichert ist, allerdings ist diese Datei durch ein Passwort geschützt.

Knacken Sie dieses Kennwort mithilfe einer Brute-Force-Attacke, um dieses Level abzuschließen. Die Datei Webarchitektur.pdf wird Ihnen in späteren Levels, wenn Sie diese benötigen, zur Verfügung stehen.

Hinweise

Eine Brute-Force-Attacke, die wie hier über das Netzwerk abgewickelt werden muss, scheitert meist an dem Flaschenhals des Netzwerkes. Aus diesem Grund sollten Sie von einer vollständigen Brute-Force-Attacke absehen und stattdessen einen Wörterbuchangriff durchführen.

Bedenken Sie auch, dass die Passwörter dieser Seite von einem deutschsprachigen Mitarbeiter angelegt wurden.

Level 0005: Wörterbuchattacke

Kategorie brute-force
Stufe 2
Punkte 2

Beschreibung

Wörterbuchangriffe sind eine tolle Sache, die Schwierigkeit liegt jedoch darin, brauchbare Wörterbücher zu bekommen. Deshalb wollen Sie einem Konkurrenten sein Wörterbuch stehlen. Sie haben bereits ermittelt wo eine Datei namens Wörterbuch.txt gespeichert ist, allerdings ist diese Datei durch ein Passwort geschützt.

Knacken Sie dieses Kennwort mithilfe einer Brute-Force-Attacke, um dieses Level abzuschließen. Die Datei Wörterbuch.txt wird Ihnen in späteren Levels, wenn Sie diese benötigen, zur Verfügung stehen.

Hinweise

Eine Brute-Force-Attacke, die wie hier über das Netzwerk abgewickelt werden muss, scheitert meist an dem Flaschenhals des Netzwerkes. Aus diesem Grund sollten Sie von einer vollständigen Brute-Force-Attacke absehen und stattdessen einen Wörterbuchangriff durchführen.

Bedenken Sie auch, dass die Passwörter dieser Seite von einem deutschsprachigen Mitarbeiter angelegt wurden.

Level 0006: Searchstring Intrusion

Kategorie sql-injection
Stufe 2
Punkte 4

Beschreibung

Sicherlich erinnern Sie sich noch an Level 0001. Nachdem Sie dort unerwünschte Nachrichten hinterlassen haben hat der Betreiber gehandelt und den Administrationsbereich durch ein Passwort geschützt.

Um das Passwort den berechtigten Personen mitzuteilen hat er eine Nachricht im Newsticker veröffentlicht, die nur für Nutzer mit Administratorrechten sichtbar ist. Leider gibt es eine SQL-Injection Schwachstelle bei der inzwischen neu eingeführten Suche, mit der Sie Nachrichten durchsuchen können. Nutzen Sie diese Schwachstelle, um das Passwort zu ermitteln und hinterlassen Sie anschließend eine Nachricht, um das Level erfolgreich abzuschließen.

Hinweise

Der Newsticker funktioniert sehr Einfach: Beim Verfassen einer Nachricht wird diese in der Datenbank zusammen mit dem Zeitpunkt und der Zielgruppe in eine Tabelle geschrieben.

Damit Nachrichten, die an die Zielgruppe der Administratoren (hier gleichbedeutend mit Redakteuren) gerichtet sind, nicht öffentlich sichtbar angezeigt werden, werden diese bei der SELECT-Abfrage, mit der diese aus der Datenbank gelesen werden zunächst nach Zielgruppe gefiltert.

Wenn Sie einen Suchbegriff übergeben, wird die SELECT Abfrage zusätzlich durch den Suchfilter ergänzt, das heißt im Klartext, dass Suchfilter und Zielgruppenfilter mit einem AND verknüpft werden.

Bei der erwähnten SQL-Injection Sicherheitslücke handelt es sich um eine mangelhafte Validierung des Suchbegriffs. Indem Sie diese Schwachstelle ausnutzen und einen Weg finden, die bereits gesetzten Filter zu umgehen, erlangen Sie Zugriff auf die Nachrichten, die nur für Administratoren bestimmt sind. Hier können Sie nun die Nachricht mit dem Passwort herausfiltern.

Level 0007: Der große Caesar

Kategorie kryptografie/historische-verfahren
Stufe 2
Punkte 4

Beschreibung

Nachdem Sie sich in Level 0002 Zugang zum Administrationsbereich des Webchats verschafft haben, haben Sie nun einen Bereich namens paul's Chatroom entdeckt, zu dem Sie keinen Zugang haben.

Ihre Aufgabe ist es, sich Zugang zu diesem Bereich zu verschaffen.

Hinweise

Schauen Sie doch einmal im Administrationsbereich der Seite vorbei, den Sie bereits aus Level 0002 kennen, womöglich stoßen Sie dort auf einen Lösungsansatz.

Die Caesarchiffre und andere einfache Substitutionschiffren erkennt man in der Regel dadurch, dass sich eine, für die zugrunde liegende Sprache charakteristische, wenngleich verschobene Häufigkeitsverteilung ergibt.

Bedenken Sie, dass unterschiedliche Kommunikationspartner unterschiedliche Schlüssel verwenden könnten.

Das durch die Entitätsreferenz ​ dargestellte Zeichen dient lediglich Formatierungszwecken und ist nicht Bestandteil der Nachrichten.

Level 0008: Grüße von Blaise de Vigenère

Kategorie kryptografie/historische-verfahren
Stufe 3
Punkte 6

Beschreibung

In Level 0007 haben Sie sich Zugang zu pauls' Chatroom verschafft. Da wäre es doch schade, wenn Sie sich dort nicht ein wenig umsehen würden, Zumal es dort einiges zu entdecken gibt.

Finden Sie heraus, was paul vor den Administratoren verbergen will und nutzen Sie diese Information, um dieses Level abzuschließen.

Hinweise

Geheimtexte, die keine charakteristische Häufigkeitsverteilung für die zugrunde liegende Sprache ergeben sind in aller Regel nicht mit einer monoalphabetischen Substitutionschiffre verschlüsselt.

Die sogenannte Vigenère Verschlüsselung ist beispielsweise eine polyalphabetische Substitutionschiffre, die ebenso leicht wie die Caesar-Verschlüsselung von Hand durchgeführt werden kann, die allerdings einen deutlich besseren Schutz vor Angriffen bietet.

Dennoch lässt sich auch die Vigenère-Chiffre mithilfe eines Computers sehr leicht brechen. Zu diesem Zweck ermittelt man zunächst die Schlüssellänge des Textes. Prinzipiell funktioniert das ganz einfach durch eine Verschiebung des Geheimtextes um n Stellen und die anschließende Ermittlung der Ähnlichkeit der beiden Texte (Korrelationswert). Dies wiederholt man für alle möglichen n, also von n = 1 bis n gleich der Länge des Geheimtextes. Sofern der Text ausreichend Redundanzen aufweist, wovon in einer natürlichen Sprache ab einer gewissen Länge auszugehen ist, entspricht die Schlüssellänge dem n, für das man den größten Korrelationswert ermittelt hat, also dem n, für den die beiden Texte den geringsten Unterschied aufgewiesen haben.

Hat man erst einmal die Schlüssellänge bestimmt, so ist nicht weiter schwer, eine erfolgreiche Kryptoanalyse durchzuführen.