Zum Inhalt springen
Startseite » picoCTF wave a flag

picoCTF wave a flag

Die nächste Challenge heißt Wave a flag und geht um den grundlegenden Umgang mit Binaries unter Linux. Nachdem du die angegebene Datei heruntergeladen hast, öffne ein Terminal Fenster vom selben Ordner. Um die Dateien im aktuellen Verzeichnis anzuzeigen, benutze das ‚ls‘ Kommando:

$ ls
warm

Um etwas mehr Informationen über die angezeigten Dateien zu bekommen, kannst du die Option ‚-l‘ mit dem ‚ls‘ Kommando benutzen:

$ ls -a
-rw-rw-r-- 1 dominik dominik 10936 Feb  1 10:28 warm

Jetzt kannst du die Zugriffsrechte der Datei sehen: -rw-rw-r– Hier eine Übersicht, wie man die Zugriffsrechte liest:

  • Der erste Buchstabe ist entweder ein ‚-‚ oder ein ‚d‘. Ein ‚-‚ steht für eine Datei während ein ‚d‘ anzeigt, dass es sich um ein Verzeichnis handelt.
  • der 2. bis 4. Buchstabe stehen für die Zugriffsrechte des ‚Eigentümers‘ der Datei.
    • hier steht der 1. der drei Buchstaben für die Lese-Rechte. Es kann sich entweder um ein ‚-‚ handeln, was dafür steht, dass der Eigentümer die Datei nicht lesen darf, oder um ein ‚r‘, was dafür steht, dass der Eigentümer der Datei diese auch lesen darf.
    • der 2. der drei Buchstaben steht für die Schreib-Rechte. Ein ‚-‚ bedeutet, dass der Eigentümer die Datei nicht verändern darf, bei einem ‚w‘ darf der Eigentümer die Datei verändern.
    • der 3. Buchstabe aus diesem Block steht für die Ausführ-Rechte. Hier kann entweder ein ‚-‚ oder ein ‚x‘ stehen. Das ‚-‚ steht wie du wahrscheinlich schon vermutest dafür, dass der Eigentümer diese Datei nicht ausführen darf, wobei ein ‚x‘ ihm die Ausführung erlaubt.
  • die nächste Gruppe (5. bis 7. Buchstabe) sind ähnlich der vorherigen Gruppe, nur dass es sich diesmal nicht um die Rechte des Eigentümers handelt, sondern um die Rechte der Gruppe, der diese Datei zugeordnet ist.
  • die letzte Gruppe (8. bis 10. Buchstabe) sind wieder analog, dieses mal aber für alle anderen Benutzer, die nicht entweder Eigentümer sind, oder der Gruppe der Datei angehören.

Die beiden Namen hinter den Berechtigungen geben den Eigentümer (erster Name) und die Gruppe (zweiter Name) an, welche in diesem Fall identisch sind.

Mit dem Wissen über die Zugriffsrechte einer Datei unter Linux sehen wir, dass wir nicht das Recht haben, diese Datei auszuführen. Um das zu ändern gibt es das ‚chmod‘ Kommando:

$ chmod u+x warm

Mit der Option ‚u+x‘ sagen wir dem ‚chmod‘ Kommando, dass wir dem Besitzer das Recht einräumen möchten, die Datei auszuführen. Nochmaliges ‚ls -l‘ zeigt, ob wir Erfolg hatten:

$ ls -l
-rwxrw-r-- 1 dominik dominik 10936 Feb  1 10:28 warm

Jetzt können wir versuchen, due Datei auszuführen. Tippe den Dateinamen mit vorangestelltem ‚./‘ in das Terminal. Das ‚./‘ sagt dem System, dass es die Datei im aktuellen Verzeichnis suchen soll.

$ ./warm
Hello user! Pass me a -h to learn what I can do!

Das Programm sagt uns, dass wir ein ‚-h‘ als Argument anfügen sollen, damit es uns zeigt, was es kann. Normalerweise steht das Argument ‚-h‘ dafür, eine kurze Hilfe eines Programms anzuzeigen.

$ ./warm -h
Oh, help? I actually don't do much, but I do have this flag here: picoCTF{flag}

Glückwunsch. Du hier ist deine Flag.

Schlagwörter:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert