Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux
In diesem Artikel werden wir die 25. Aufgabe von der Seite pwnable.kr.

Organisatorische InformationenSpeziell fĂŒr diejenigen, die etwas Neues lernen und sich in verschiedenen Bereichen der Informations- und Computersicherheit weiterentwickeln möchten, werde ich ĂŒber die folgenden Kategorien schreiben und berichten:

  • PWN;
  • Kryptographie (Crypto);
  • Netzwerktechnologien (Network);
  • Reverse Engineering;
  • Steganographie (Stegano);
  • Suche und Ausnutzung von WEB-Schwachstellen.

DarĂŒber hinaus werde ich meine Erfahrungen in der Computerforensik, der Malware-Analyse und Firmware-Analysen, Angriffen auf drahtlose Netzwerke und lokale Netzwerke, der DurchfĂŒhrung von Penetrationstests und dem Schreiben von Exploits teilen.

Um Ihnen zu ermöglichen, ĂŒber neue Artikel, Software und andere Informationen informiert zu bleiben, habe ich einen Kanal auf Telegram und eine Gruppe fĂŒr die Diskussion beliebiger Fragen im Bereich der IuK-Sicherheit. Auch Ihre persönlichen Anfragen, Fragen, VorschlĂ€ge und Empfehlungen werde ich persönlich prĂŒfen und allen antworten.

Alle Informationen werden ausschließlich zu Bildungszwecken bereitgestellt. Der Autor dieses Dokuments ĂŒbernimmt keine Verantwortung fĂŒr SchĂ€den, die jemandem durch die Nutzung von Wissen und Methoden entstehen, die aus der Untersuchung dieses Dokuments gewonnen wurden.

Lösung der Aufgabe otp

Wir setzen den zweiten Abschnitt fort. Ich sage gleich, dass es schwieriger als der erste ist, aber dieses Mal stellen sie den Quellcode des Programms nicht zur VerfĂŒgung. Vergessen Sie hier die Diskussion nicht (https://t.me/RalfHackerPublicChat) und hier (https://t.me/RalfHackerChannel). Fangen wir an.

Wir klicken auf das Symbol mit der Bezeichnung otp. Uns wird die Adresse und der Port fĂŒr die Verbindung gegeben.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Wir verbinden uns und schauen uns auf dem Server um.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Das Flag, das wir nicht lesen können, das Programm und sein Quellcode. Lassen Sie uns den Quellcode ansehen.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Wir zerlegen ihn. Das Programm nimmt das Passwort als Argument.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Dann werden 16 zufÀllige Bytes in die Variable otp gespeichert.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Im Ordner tmp wird eine Datei mit einem zufÀlligen Namen (die ersten 8 Bytes otp) erstellt und darin werden 8 zufÀllige Bytes (die zweiten 8 Bytes otp) geschrieben.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Aus irgendeinem Grund wird der Wert der erstellten Datei gelesen und mit dem eingegebenen Passwort verglichen.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Hier liegt die Schwachstelle. Sie besteht in der zwischenzeitlichen Speicherung der generierten Zahl in einer Datei. Wir können die DateigrĂ¶ĂŸe beispielsweise auf 0 beschrĂ€nken, sodass bei der Aufnahme und dem Vergleich mit dem Passwort mit 0 verglichen wird. So kann das gemacht werden.

# ulimit -f 0

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Jetzt starten wir das Programm.

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Wir erhalten einen Fehler. Kein Problem, denn wir können ihn mit dem gleichen Python verarbeiten.

python -c "import os, signal; signal.signal(signal.SIGXFSZ, signal.SIG_IGN); os.system('.\/otp 0')" 

Lösung der Aufgabe von pwnable.kr 25 — otp. BeschrĂ€nkung der DateigrĂ¶ĂŸe in Linux

Wir erhalten das Flag und unsere leichten 100 Punkte. Und wir machen weiter: Im nĂ€chsten Artikel werden wir das Web ansprechen. Sie können sich uns anschließen unter Telegram.

Quelle: habr.com

60GB SSD 8Gb DDR4