=> [   software   |   knowledge-library   |   rezensions datenbank   |   hack it!   ]
 

Hack It

Intro

Wir haben uns damit beschäftigt eine eigene Subseite mit Hack-Its aufzubauen. Dies funktioniert nach dem System, dass man pro Level eine oder mehrere Aufgaben vorgesetzt bekommt. Lößt man diese richtig, bekommt man Passwörter. Hat man alle Passwörter eines Levels herausbekommen, bekommt man Zugriff auf den nächsten Level und darf sich in die Hall-Of-Fame des geschafften Levels eintragen.

Hall of Fame

Level 1 - Die Grundlagen

Wir starten recht einfach. Dieser Level besteht aus folgenden Aufgaben und ist eher als Demonstration deines Willens, diese Challenge zu schaffen, zu betrachten:

  • Steganographie

  • Programmieren, Kryptographie

    In dem folgenden Skript fehlt ein Teil einer Zeile:

    #!/bin/bash
    
    INPUT=??????????
    
    export INPUT=`echo $INPUT | /usr/games/caesar 7 | \
    		sed s/y/ll/ | tr '[A-Z]' '[a-z]'`
    
    INPUT2=`perl -e '$input=$ENV{'INPUT'};print $input."\n";'`
    
    cat <<EOF >garbage.c
    #include <stdio.h>
    #include <stdlib.h>
    
    int main(int argc, char *argv[]){
    	int i;
    	
    	printf("define f(x){\n\t(x^2)\n}\n");
    	for(i=0; i<strlen(argv[1]); i++) {
    		printf("f(%o)\n", (int)(argv[1][i]+1));
    	}
    	return 0;
    }
    EOF
    gcc -Wall -o garbage garbage.c && \
    ./garbage $INPUT2 | bc | grep -v '^0$' ; \
    rm garbage
    

    Die Aufgabe besteht nun darin diese Zeile zu reproduzieren. Das Skript liefert folgende Ausgabe:

    25600
    22801
    23104
    24025
    27556
    27889
    23716
    24025
    24025
    24025
    29929
    24025
    25921
    27556

    Tipp: Nicht alles, was schwer aussieht, ist auch schwer.

Passwort-Test:

Steganographie Passwort: Kryptographie/Programming Passwort:

Level Jump

Wer sich bereits in einem anderen Level befindet kann hier dass entsprechende Levelpasswort eingeben um dort hin zu gelangen. Dabei sind der Reihenfolge der Aufgabenlistung nach alle Passwörter zu einem zusammenzusetzen.

War die erste Aufgabe bspw. eine Steganographie-Aufgabe und dass Passwort dafür 'xyz' und die zweite (von 2) Aufgaben eine Programmieraufgabe mit dem Passwort 'abc', dann wäre dass Levelpasswort 'xyzabc'.

Levelpasswort: