Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux
V tem članku bomo rešili 25. nalogo s spletnega mesta pwnable.kr.

organizacijske informacijeŠe posebej za tiste, ki se želijo naučiti nekaj novega in se razvijati na katerem koli področju informacijske in računalniške varnosti, bom pisal in govoril o naslednjih kategorijah:

  • borova ogorčica;
  • kriptografija (Crypto);
  • omrežne tehnologije (omrežje);
  • vzvratno (vzvratno inženirstvo);
  • steganografija (Stegano);
  • iskanje in izkoriščanje ranljivosti WEB.

Poleg tega bom delil svoje izkušnje na področju računalniške forenzike, analize zlonamerne in strojne programske opreme, napadov na brezžična in lokalna omrežja, izvajanja pentestov in pisanja podvigov.

Da boste lahko izvedeli o novih člankih, programski opremi in drugih informacijah, sem ustvaril kanal v Telegramu и skupina za razpravo o morebitnih vprašanjih na območju IIKB. Tudi vaše osebne želje, vprašanja, predloge in priporočila Bom pogledal in vsem odgovoril..

Vse informacije so na voljo samo v izobraževalne namene. Avtor tega dokumenta ne prevzema nikakršne odgovornosti za morebitno škodo, povzročeno komur koli zaradi uporabe znanja in metod, pridobljenih s preučevanjem tega dokumenta.

Reševanje naloge otp

Nadaljujmo z drugim delom. Takoj bom rekel, da je bolj zapleten kot prvi, vendar tokrat ne zagotavljajo izvorne kode programa. Ne pozabite na razpravo tukaj (https://t.me/RalfHackerPublicChat) in tukaj (https://t.me/RalfHackerChannel). Začnimo.

Kliknite na ikono s podpisom otp. Dobimo naslov in vrata za povezavo.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Povežemo se in pogledamo po strežniku.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Zastavica, ki je ne moremo prebrati, program in njegova izvorna koda. Poglejmo vir.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Uredimo to. Program vzame geslo kot argument.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Nato se naključnih 16 bajtov shrani v spremenljivko otp.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

V mapi tmp se ustvari datoteka z naključnim imenom (prvih 8 bajtov je otp) in vanjo se zapiše naključnih 8 bajtov (drugih 8 bajtov je otp).

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Iz nekega razloga se vrednost ustvarjene datoteke prebere in primerja z vnesenim geslom.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Tukaj nastopi ranljivost. Sestoji iz vmesnega shranjevanja ustvarjene številke v datoteko. Velikost datoteke lahko omejimo na primer na 0, potem se bo pri pisanju in branju z geslom primerjala 0. To lahko naredimo takole.

# ulimit -f 0

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Zdaj pa zaženimo program.

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Dobimo napako. Ni važno, lahko se obdela z istim pythonom.

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

Reševanje naloge s pwnable.kr 25 - otp. Omejitev velikosti datoteke Linux

Dobimo zastavo in svojih lahkih 100 točk. In nadaljujemo: v naslednjem članku se bomo dotaknili spleta. Lahko se nam pridružiš na Telegram.

Vir: www.habr.com

Dodaj komentar