try2hack.nl - Level 5

Hab die Seite try2hack.nl gerade eher durch Zufall gefunden,
ist eine ganze spaßige Sache.

Da ich mir bei Level5 (mangels Windows) ein wenig behelfen musste
und mir vorstellen könnte, dass es dem ein oder anderen genauso geht,
veröffentliche ich hier mal meinen...Behelf.

Der Clou bei Level5 ist eigentlich nur die Soße zu dekompilieren,
was auf einem Unix System aber eher essig ist...(gibt zumindest meines Wissens keinen Unix VB Decompiler).

1) Also Level 5 nebst 'nem VB Decompiler an irgendwen mailen, der vor einer garstigen Windowsgurke sitzt und die dekompilierte Version zurückschicken lassen.
(Oder die Datei, die hier an das Posting angehängt ist runterladen, da ist die dekompilierte Version drin).

2) In der dekompilierten Datei level5.bas findet sich die Funktion, die die Ziel-URL für Level6 zusammenbaut.

3) In main.txt stehen die zu verwurstenden Werte, die die Funktion aus level5.bas bearbeitet.

4) Die Funktion nachvollziehen (geht mit Zettel und Stift).

--

Für die ungeduldigen hier ein kleines php Programm, dass im Prinzip das gleiche macht,
wie die Funktion aus Level5.Exe (wenn Ihr es selbst macht, ist der Lerneffekt natürlich größer)

(Die Lösungs PHP ist auch als Anhang nochmal dabei, da die Codeanzeige möglicherweise nicht alles anzeigt)


Code:
<?

/* Aus der Disassemblierten LEVEL5.EXE zusammengetragen

   Konstanten 
   ----------
   Global Const gc0006 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,:;-*+=~|&!_$#@()[]{}<\/>"
   Global Const gc000A = "http://www.try2hack.nl/levels/level6-ksghvb.xhtml"

   URL-Zusammenwuerfelfunktion aus LEVEL5.EXE
   ------------------------------------------
   MsgBox "Level 6 can be found at: " & Left$(gc000A, 37) & Mid(gc0006, 21, 1) & Mid(gc0006, 14, 1)
   & Mid(gc0006, 29, 1) & Mid(gc0006, 32, 1) & Mid(gc0006, 12, 1) & Mid(gc0006, 14, 1) & Mid(gc000A, 44, 6), 0, "Horray!" */


/* Ab hier PHP "Uebersetzung" */

$gc0006="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,:;-*+=~|&!_$#@()[]{}<\/>";
$gc000A="http://www.try2hack.nl/levels/level6-ksghvb.xhtml";


/* Bewusst in Einzelschritten, damit es auch schoen nachvollziehbar bleibt */

echo $ergebnis00=substr($gc000A,0,37); // entspricht: Left$(gc000A, 37)
echo "\n";
echo $ergebnis01=substr($gc0006,20,1); // entspricht: Mid(gc0006, 21, 1)
echo "\n";
echo $ergebnis02=substr($gc0006,13,1); // entspricht: Mid(gc0006, 14, 1)
echo "\n";
echo $ergebnis03=substr($gc0006,28,1); // entspricht: Mid(gc0006, 29, 1)
echo "\n";
echo $ergebnis04=substr($gc0006,31,1); // entspricht: Mid(gc0006, 32, 1)
echo "\n";
echo $ergebnis05=substr($gc0006,11,1); // entspricht: Mid(gc0006, 12, 1)
echo "\n";
echo $ergebnis06=substr($gc0006,13,1); // entspricht: Mid(gc0006, 14, 1)
echo "\n";
echo $ergebnis07=substr($gc000A,43,6); // entspricht: Mid(gc000A, 44, 6)
echo "\n\n\n";

// Jetzt alle Teilergebnisse zusammenbauen und ausgeben
echo $endergebnis=$ergebnis00.$ergebnis01.$ergebnis02.$ergebnis03.$ergebnis04.$ergebnis05.$ergebnis06.$ergebnis07;
echo "\n\n\n";

?>


Viele Grüße,

triiix

P.S.: Nen try2hack.nl für NICHT-Windowsnutzer wär mal was ;-)
 
  • Like
Reactions: mpi
Zurück
Oben