📝 Zusammenfassung
openai-gpt-4o-mini
## HAUPTTHEMA
In diesem Video wird demonstriert, wie man ein verschlüsseltes ZIP-Archiv hacken kann, indem man das Passwort über das Terminal generiert und filtert.
## KERNPUNKTE
• **Verschlüsselte ZIP-Datei**: Unbekanntes Passwort, das dringend benötigt wird.
• **Passworthinweise**: Das Passwort ist eine neunstellige Zahl, die die Ziffern 1 bis 9 einmal enthält und bestimmte Teilbarkeitsbedingungen erfüllt.
• **Nützliche Terminalbefehle**: Verwendung von Befehlen wie `seq` zur Passwortgenerierung und `grep` zur Filterung von Daten.
• **Datenreduktion**: Durch Kombination von Terminalbefehlen wurde die Anzahl der möglichen Passwörter von einer Milliarde auf 576 reduziert.
• **Automatisches Knacken**: Einsatz des Tools `fcrackzip`, um das Passwort nach der Reduktion zu testen.
• **Ergebnis des Hacks**: Das Passwort wurde erfolgreich ermittelt und die ZIP-Datei konnte entpackt werden.
## FAZIT/POSITION
Das Video vermittelt nicht nur praktische Kenntnisse im Umgang mit dem Terminal, sondern zeigt auch die effektive Anwendung von spezifischen Befehlen zur Lösung eines realistischen Problems. Es wird betont, wie nützlich der `grep` Befehl für Datenmanipulationen ist.
Halli hallo, hier ist eine super wichtige ZIPDatei. Die muss ich unbedingt entpacken, weil ich dringend den Inhalt brauche. Es gibt nur ein riesiges Problem. die Datei, die ist verschlüsselt und lässt sich nur mit dem Passwort öffnen. Und genau das habe ich vergessen. Das heißt, wir werden in diesem Video ein bisschen hacken und versuchen, das Passwort über das Terminal zu knacken. Und eins kann ich dir jetzt schon versprechen, du wirst einige super nützliche Terminalbefehle kennenlernen. Let's go. Es gibt zum Glück ein paar Hinweise, die uns die Arbeit ein bisschen erleichtern. Z.B., dass das Passwort eine Zahl ist. Allerdings eine neunstellige Zahl, also knapp eine Milliarde an möglichen Kombinationen. Das heißt, ein bisschen zu viel, um die alle in der Frühstückspause mal eben auszutesten. Natürlich gibt's Tools, die das Knacken von solchen Zippasswörtern automatisch durchführen können, wie z.B. das Befehlszahlenprogramm FCXIP, mit dem man dann alle Passwörter automatisch durchtesten kann. Aber bei einer Milliarde möglichen Passwörtern, dauert das Stunden, wir müssen es irgendwie schneller hinkriegen, aber es gibt noch ein paar andere Passworthinweise. Den ersten Hinweis habe ich ja eben schon genannt. Die gesuchte Zahl ist neunstellig. Zweiter Passworthinweis, die Ziffern 1 bis 9, die kommen jeweils genau einmal in dem gesuchten Passwort vor. Und der letzte Hinweis, die erste Ziffer, die muss durch eins teilbar sein. Die ersten beiden muss durch 2 ohne Divisionsrest teilbar sein. Die ersten drei Ziffern durch 3 und so weiter und so weiter. Das heißt, die ganze Zahl, die muss auch glatt durch 9 teilbar sein. Genau dieses Problem ist maßgeschneidert für das Terminal, weil wir das Problem textbasiert lösen können. Und genau das machen wir jetzt. Wie geben wir das Problem an? Ganz einfach, wir werden am Anfang alle möglichen Passwörter erzeugen, also wirklich eine Milliarde Passwörter generieren und die dann schrittweise reduzieren wie so ein Trichter, bis wir immer weniger Passwörter haben, die passen könnten und am Ende hoffentlich dann das richtige Passwort finden. Als erstes erzeugen wir diese eine Milliarde Passwörter. Das machen wir jetzt alles mit dem Terminal, was ich hier schon geöffnet habe und was ich mal vergrößere. Und nun verwende ich den Befehl Se für Sequence. Also Sequenz ist die Eselsbrücke. Und im einfachsten Fall gibt man dem einfach den Endwert an, z.B. 20 und dann zählt er von 1 bis 20 hoch. Wir müssen allerdings nicht nur bis 20 hoch zählen, sondern bisschen höher. Und deswegen geben wir den Befehl mit der Option -F noch das Format an, indem wir das haben wollen. Das gibt man in einfache Anführungszeichen an. gefolgt von einem Prozentzeichen und dann sage ich, ich möchte mit führende Nullen haben, neun stellen und ich möchte null Nachkommastellen haben. Und das ganze soll eine Fließpunktzahl sein, eine hochauflösende Zahl. Wir fangen an von 0 zu zählen und dann gehen wir hoch bis 999999 und wenn ich jetzt Enter drücke, dann fließen die Zahlen hier nur so durchs Terminal und siehst das Format, das passt. Wir haben führende Nullen und immer eine neunstellige Zahl. Das breche ich jetzt aber mal ab mit Steuerung C, denn im Terminal nutzt mir das wenig. Ich möchte das in einer Datei haben und deswegen wiederhole ich den Befehl mit der Falltaste nach oben und leite das jetzt über die Spitze Klammer. Die ganze Ausgabe dieses Befehls in eine Datei namens 1.txt um. Die soll all diese Passwörter beinhalten. Und jetzt lasse ich den Befehl mal rödeln. So, nach ungefähr 2 Minütchen war der Befehl fertig. Jetzt prüfen wir das Ergebnis und zählen die Zeilen. Das machen wir mit dem Befehl Word Count WC. Der zählt nicht nur Wörter, sondern mit der Option L für Lines auch Zeilen. Und wenn ich jetzt sage, zähl mal bitte alle Zeilen, dann muss er natürlich ein bisschen berechnen, bis er alle durchgerechnet hat, durchgezählt hat. Aber jetzt sollte hier gleich nach kurzer Zeit ja, passt. Wir haben jetzt hier eine Milliarde Zahlen genau das, was wir haben wollen. Und wie groß ist die Datei? Das können wir mit diesem Befehl ermitteln. 9,3 GB. Okay, damit ist die Datei erzeugt. Diese riesige Datenmenge, die müssen wir jetzt irgendwie ausdünnen. Und das einfachste, was wir jetzt machen können, ist einfach alle Zahlen, die eine Nulle enthalten, zu entfernen, denn wir brauchen ja nur Zahlen, die die Ziffern 1 bis 9 enthalten. Und das alles machen wir mit einem der nützlichsten Befehle im Terminal, mit dem sogenannten Befehl Grab, den ich dir jetzt vorstellen möchte. Die Arbeitsweise von Grab möchte ich dir an einem kleinen Beispiel zeigen, denn hier habe ich eine Datei mit Obst und mit dem Befehl Grab kann ich z.B. rausfinden, wie oft das Wort Apfel in dieser Datei vorkommt, nämlich genau einmal. Aber ich muss nicht nur ganze Wörter suchen, ich kann auch Namensbestandteile suchen. Z.B. wie oft kommt denn die Zeichenkette an in der Obstdatei vor? Und dann sehen wir, dass es drei Wörter gibt oder drei Obstsorten Ananas, Banane und Mango, die diese Zeichenkette enthalten. Was man aber auch noch machen kann, ich kann auflüsten, welche eben nicht diese Zeichenkette enthalten und das mache ich mit der Option - V. Die dreht die Suche nämlich um. Und wenn ich das jetzt noch mal ausführe, dann siehst du diese Sorten, Apfelbirne, die enthalten eben nicht diese Zeichenkette. Und genau das können wir auch mit unserer Passwortdatei verwenden. Also suche mir alle Dateien, die nicht die Zeichenkette 0 enthalten. In der Datei 1 txtd, die alle Passwörter enthält. Und das Ergebnis, also alle Zahlen ohne Null, leite mir bitte in die Datei 2 TXT um. Nach ca. Bei einer Minute war der Befehl fertig und die neue Datei, die hat jetzt wahrscheinlich nicht mehr 100 bzw. eine Milliarde Zahlen, sondern nur noch 387 Millionen. Ist also deutlich kleiner, fast auf ein Drittel geschrumpft und die Dateigröße ist natürlich auch etwas kleiner, nämlich nur noch 3,6 GB. Wir müssen uns mal ganz kurz verdeutlichen, was da gerade passiert ist. Mit nur einem Befehl, mit dem Grabbe Befehl haben wir die komplette Datenmenge um fast ein auf fast ein Drittel reduziert und das hat eine Minute gedauert. Also ein genialer Befehl. Wenn du Grab auch so nützlich findest, dann gibt diesem Video doch gerne mal einen Daumen nach oben und Grab kann noch viel viel mehr. Das schauen wir uns jetzt mal eben an. Die ganze Menge an Passwörtern, die wir ja schon deutlich eingeschrumpft haben, die können wir noch erheblich weiter reduzieren und das ohne dass wir groß rechnen müssen. Wie ist das möglich? Dazu schauen wir uns die Zahlen noch mal eben etwas genauer an. Die geraden Ziffern, die habe ich auf blaue Kättchen geschrieben und die Ungaden auf rote. Das ist ein total wichtiges Unterscheidungsmerkmal. Warum? Das siehst du sofort. Vorher möchte ich aber sagen, dass wir ja eine Ziffer schon fest bestimmen können, denn die Zahl aus den ersten fünf Ziffern, die muss ja durch fünf teilbar sein und das gilt ja nur, wenn die auf fünf oder 0 endet. Die Null steht uns gar nicht zur Verfügung, sondern nur die fünf. Das heißt, an der fünften Stelle muss unbedingt die fünf stehen. Es gibt aber noch eine andere Vereinfachung. Die ersten beiden Ziffern, die müssen durch zwei teilbar sein. Das heißt nicht unbedingt, dass hier ein zwei stehen muss, aber eine gerade Zahl, also definitiv eine blaue Karte. Und das gleiche gilt auch für die vierte Position. Hier ist es ja auch eine gerade Zahl. für die sechste Position und für die achte auch da müssen jeweils gerade Ziffern, also blaue Karten sein. Da wir keine anderen Karten mehr haben, außer ungerade Karten, müssen an der ersten, der dritten der 7 und der aber auch ungerade Zahlen sein. Und jetzt kommt das Beste. Mit Grab können wir prüfen, ob an der und der Position eine gerade Zahl oder eine ungradezahl oder eine fünf steht. Dazu müssen wir aber einen erweiterten Suchchausdruck verwenden, einen sogenannten regulären Ausdruck. Als erstes teilen wir Grab mit, dass wir einen regulären Ausdruck verwenden. Das machen wir mit der Option groß E und dann geben wir den Ausdruck in einfachen Anführungszeichen an. Das erste Zeichen muss eine ungerade Ziffer sein. Wir wissen aber nicht welche. Und deswegen sagen wir, wir geben jetzt einen Bereich an mit eckigen Klammern. Das heißt, alle Zeichen in diesem Bereich sind erlaubte Zeichen und das sind 1 3 7 und 9. Die fünf ist ja schon vergeben. Das zweite Zeichen muss eine gerade Ziffer sein. Hier können wir das gleiche Verfahren anwenden. Wir sagen hier 2 4 6 und 8. Die Null ist auch nicht erlaubt, die können wir da rausnehmen und ist ein Ausdruck, den wiederholen wir jetzt einfach für das dritte und das vierte Zeichen, denn die müssen ja einfach im Wechsel sein. Ich kopiere mir das jetzt einfach und setze das nun hier ein. Erstes Zeichen, zweites Zeichen, drittes Zeichen, viertes Zeichen. Das fünfte Zeichen, das haben wir schon bestimmt, das ist eine fünf. Und danach können wir jetzt weiter verfahren wie vorher. Wir sagen jetzt hier kommt wieder ein eine gerade Ziffer, also 2 4 6 8 dann eine ungerade. Das kopieren wir da rein. Und das gleiche machen wir noch mal. Und damit ist der ganze Ausdruck fertig. Also gerade, ungerade gerade, nee, Quatsch. ungerade, gerade ungerade gerade 5 gerade un gerade gerade un gerade. Wende mir das bitte auf die letzte Datei an. Das war die Datei 2 txt und leite mir die ausgefilterte Ausgabe, die also diesem Suchmuster entspricht in die Datei 3 TXT um. So, nach einigen Sekunden war der Befehl fertig. Schauen wir uns das Resultat mal eben an und wie viel wir nun gespart haben oder wie groß die Daten nun reduziert sind. Vorher waren es hunderte Millionen und jetzt haben wir 65 000, also deutlich reduziert und die Datei ist auch nur noch leppische 640 KB groß. Falls du immer noch nicht davon überzeugt bist, dass Grab ein super nützlicher Befehl ist, dann zeige ich dir jetzt absolutes Terminal kungfu, denn den nächsten Trick, den kennen selbst viele erfahrene Pro User nicht. Wir können ja alle Passwörter ausfiltern, bei den Ziffern mehrfach vorkommen und das geht auch mit einem regulären Ausdruck, also mit groß E. Und jetzt sage ich jedes beliebige Zeichen und dafür steht genau der Punkt. steht eben nicht für den für das Zeichenpunkt, sondern für irgendein beliebiges Zeichen. Was ich mir hier merke über die runden Klammern, um später darauf zurückzugreifen, folgt von einem oder mehreren anderen beliebigen Zeichen. Ich sage also beliebiges Zeichen und das ja ist ein Multiplayer, der sagt also null oder mehrfach vorkommt. Und jetzt greife ich mir auf das zuvor gemerkte Zeichen wieder zu mit1. Der steht also für das Zeichen, was wir uns hier in diesen runden Klammern gemerkt haben. Was macht der Ausdruck? Irgendein Zeichen, was mehrfach vorkommt, sagt er. Also, und das wollen wir ja ausfiltern. Also, wir nehmen die zuvor erzeugte Datei und erzeugen jetzt eine neue Datei 4 txt. Und die ist auch relativ schnell fertig und die ist jetzt wahrscheinlich nicht mehr 65 000 Zahlen groß wie die vorherige Datei, sondern nur noch krass, nur noch 576 Passwörter, die wir jetzt zu prüfen haben. Wir gehen mal eben rein und prüfen das stichpunktartig. 1 3 1 2 3 8 5 4 9 6 7. Das heißt, die Ziffern kommen jetzt wirklich nicht mehr mehrfach in diesen Passwörtern vor. Wir haben also eine Milliarde Passwörter auf 576 reduziert und das ohne zu rechnen, sondern nur indem wir drei Grab Befehle angewendet haben. Grab ist wirklich ein hammernützliches Programm. Wir haben jetzt zwei Möglichkeiten. Wir könnten einerseits das Passwort berechnen und prüfen, welches die Teilbarkeitsbedingung erfüllt. Das heißt, erste Ziffer durch ein teilbar, ersten beiden durch 2 und so weiter. Oder wir können es versuchen automatisch zu knacken, nämlich mit F Cracksip, denn jetzt haben wir ja nicht mehr so viele mögliche Passwörter über. Und genau das machen wir jetzt mal eben. Also F CXIP und dann sage ich, ich möchte bitte eine Liste von Passwörtern durchgehen. Also ein Directory sagt man mit der Option D. Das entsprechende die der entsprechende Datei gebe ich über die Option P an. Das war 4 TXD. Das ist ja die Datei mit den äh Passwörtern, die wir gefunden haben. Dann sage ich bitte anzippen, also prüfen, ob das Verzeichnis, ob das Passwort wirklich funktioniert. Und als letztes Argument gebe ich die entsprechende ZIPDatei an. Und wenn ich das Programm jetzt laufen lasse, dann hat es das richtige Passwort geknackt. 38154729. Das probiere ich jetzt mal eben aus. Also Doppelklick drauf, Passwort reinkopieren und bam, da ist es. Super wichtig, wurde entpackt. Juhu. Die Befehle aus dem Video habe ich in einem Script veröffentlicht namens Poldi. Den Link dazu findest du unten in der Videobeschreibung. Und in diesem Script siehst du also noch mal diese einzelnen Filter, die wir angewandet haben, diese Grab Befehle. Und hier ist auch ein kleines Minimchen in AWK oder Orges geschrieben, was die Zahl direkt berechnet. Wir haben zusammen das Passwort geknackt. Sehr, sehr geil. Was aber noch viel wichtiger ist, du hast den super nützlichen Grab Befehl kennengelernt, den du natürlich ab jetzt benutzen kannst. Wenn dir dieses Video gefallen hat und ich ähnliche Videos produzieren soll, dann gibt gerne diesem Video einen Daumen nach oben. Hype vielleicht sogar das Video, damit es mehreren Leuten empfohlen wird und dann kann ich mehr solche Videos produzieren. Dann weiß ich, dass dir das Thema gefallen hat. Ich bedanke mich bei dir fürs Zuschauen. Bis zum nächsten Video. Mach's gut. Tschüssi. [Musik]