Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang
Selles artiklis lahendame saidilt 25. ülesande pwnable.kr.

Organisatsiooniline teaveEriti neile, kes soovivad õppida midagi uut ja areneda mis tahes teabe- ja arvutiturbe valdkonnas, kirjutan ja räägin järgmistest kategooriatest:

  • PWN;
  • krüptograafia (Crypto);
  • võrgutehnoloogiad (Network);
  • tagurpidi (Reverse Engineering);
  • steganograafia (Stegano);
  • WEBi haavatavuste otsimine ja ärakasutamine.

Lisaks sellele jagan oma kogemusi arvutite ekspertiiside, pahavara ja püsivara analüüside, traadita võrkude ja kohtvõrkude rünnakute, pentestide ja rünnakute kirjutamise alal.

Olen loonud, et aidata teil olla kursis uute artiklite, tarkvara ja muu teabega Telegrammi kanal и gruppi, et arutada kõiki probleeme I&KB valdkonnas. Samuti teie isiklikud soovid, küsimused, ettepanekud ja soovitused Uurin seda isiklikult ja vastan kõigile..

Kogu teave on esitatud ainult hariduslikel eesmärkidel. Selle dokumendi autor ei võta endale mingit vastutust kahju eest, mis on kellelegi tekitatud selle dokumendi uurimisel saadud teadmiste ja tehnikate kasutamise tõttu.

otp ülesande lahendamine

Jätkame teise lõiguga. Ütlen kohe, et see on keerulisem kui esimene, kuid seekord ei paku nad programmi lähtekoodi. Ärge unustage arutelu siin (https://t.me/RalfHackerPublicChat) ja siin (https://t.me/RalfHackerChannel). Alustagem.

Klõpsake allkirjaga otp ikooni. Meile antakse aadress ja port, millega ühenduse luua.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Ühendame ja vaatame serveris ringi.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Lipp, mida me ei saa lugeda, programm ja selle lähtekood. Vaatame allikat.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Teeme asja korda. Programm võtab argumendina parooli.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Järgmisena salvestatakse otp muutujasse juhuslikud 16 baiti.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Tmp kausta luuakse juhusliku nimega fail (esimesed 8 baiti on otp) ja sinna kirjutatakse juhuslikud 8 baiti (teised 8 baiti on otp).

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Mingil põhjusel loetakse loodud faili väärtust ja võrreldakse seda sisestatud parooliga.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Siin tulebki haavatavus sisse. See seisneb genereeritud numbri vahepealses faili salvestamises. Faili suurust saame piirata näiteks 0-ni, siis kirjutamisel ja lugemisel võrreldakse parooliga 0. Seda saab teha nii.

# ulimit -f 0

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Nüüd käivitame programmi.

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Saame vea. See pole oluline, seda saab töödelda sama pythoniga.

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

Ülesande lahendamine pwnable.kr-ga 25 - otp. Linuxi faili suuruse piirang

Saame lipu ja meie kerge 100 punkti. Ja jätkame: järgmises artiklis puudutame veebi. Meiega saad liituda aadressil Telegramm.

Allikas: www.habr.com

Lisa kommentaar