Skip to main content

HaruulZangi2017 2-р шат #WriteUp

"Харуул занги" тэмцээн нь цахим магадлан шинжилгээ, ёс зүйт довтолгоо болон хамгаалалт гэсэн үндсэн хэсгүүдтэй. Энэхүү тэмцээн нь хууль, ёс зүйд нийцүүлэн хакерийн үйл ажиллагааг хүлээн зөвшөөрөх, гүйцэтгүүлэх, олон нийтэд үзүүлэх боломжийг бий болгох, мөн онцгой чухал мэдээлэл, эд хөрөнгийг нууцлах, хамгаалах хэрэгцээ, шаардлагыг ойлгуулахыг эрмэлзэнэ.

Харуул занги 2017 2-р шатны даалгавар нь тусгайлан бэлдсэн "VirtualBox Image - Arch Linux 64bit" file өгөгдсөн ба үүнийг VirtualBox дээр ажилуулж flag олох байсан.


#FLAG 1 - Root bypass 
Эхний даалгавар password reset буюу password-ийг нь мэдэхгүй үед сэргээж авах даалгавар байсан. VirtualBox дээрээ ажилуулах үед:


цонх гарж ирэх бөгөөд keyboard-нийхаа "E" үсэг дээр дарахад:


үүнийг доош нь гүйлгэхэд:


ийм хэсэг байх бөгөөд "quiet" ийн оронд "init=/bin/bash" болгож өөрчлөөд CTRL+X дарахад:


ийм цонх гарж ирээд үүн дээр "mount -n -o remount.rw /" гэж бичээд Enter дараад "passwd" гэж бичээд Enter дарна. Үүний дараа New Password: гэж асуух бөгөөд өөрөө password дахиж шинээр хийнэ гэсэн үг. Энгээд манай баг Root Bypass даалгаварыг амжилттай хийсэн бөгөөд VirtualBox -оо restart хийсний дараа root -ээрээ login хийхэд:


энгэж гарж ирэх бөгөөд


flag.txt -ийг нээж хараад Flag-ийг гаргаж авна.
Flag: hz{h@ppY_h@@@ck!ng}

#FLAG 2 - GUI GUI GUI
Энэхүү даалгавар нь GUI (Graphical User Interface)-ийг асаах байсан бөгөөд "startx" гэж GUI-ийг асаадаг бөгөөд асаахад:



Нүүр зураг буюу wallpaper дээр нь flag байсан.
Flag: hz{Gu!_Ye@h-gU!}

#FLAG 3 - Programming Challenge 1 
Энэхүү даалгавар нь home folder дотор байсан бөгөөд Task гэдэг нэртэйгээр байсан ба 2 terminal нээж байгаад хийх дасгал байсан. Эхлээд нэг terminal дээр нь 3 удаа Test Case оруулах бөгөөд 3 удаа оруулсаны дараа бидний жишээн дээр хэрвээ 546600 гэдэг input оруулвал хариу нь юу гарах вэ гэж биднээс асуухад нөгөө terminal дээрээ Test Case Input дээр нь 546600 гэж бичихэд гарах хариу нь 45063 байсан. Үүнийгээ эхний terminal дээр оруулж өгөхөд бидэнд flag-ийг өгсөн.


Flag: HZ{024567789999acffffecccb998766110}

#FLAG 4 - Too many files
Энэхүү даалгавар нь маш олон folder-той бөгөөд folder дотроо дахиад маш их folder гэх мэтээр агуулаад хамгийн сүүлийн folder болгонд 1 file тай байсан бөгөөд дурын 1 file-ийг нь нээх гэхэд Permission denied гэж байсан.


Тиймээс Permission өгөөд нээж үзэхээр шийдсэн бөгөөд Terminal дээрээ "chmod -R 777 *" гэж өгөөд нээж үзэхэд


I'm not your flag LOOOOL гэж гарж ирсэн бөгөөд маш олон file дунд ганц л зөв flag байгаа гэж үзээд 3уулаа 3 нь талаас нь нэг бүрчлэн шалгаж үзсэн хаха. Тэгээд эцэст нь galf/dheblzmnl/xexcafj доторх zkotdbvnb file байсан.


Flag: hz{y0u-F0u|\|d-!T-^_*}

#FLAG 5 - Lifesteal (Writeup by YMCNBYB)
hint-ээр
--------------------------------

uid = “*******”
os.getuid() == uid:
print flag
---------------------------------
Код өгөгдсөн учир бид rev2-г ажлуулж байгаа user ID-г өөрчлөх шаардлагатай болсон.
python дээр parent process-н uid-г өөрчлөх замаар child process-г тухайн user дээр ажииллуулж болж байсан тул дараах 2 кодыг ажлуулж, гаралтын файлууд дундаас бусдаасаа ялгаатай 1 файлыг нээж үзсэнээр флагыг олж авсан.
Нэг процесс дээр uid-г солихоор, дахиж өөр uid-руу сольж болохгүй байсан тул, дэд процесс үүсгэж, тэр дээрээ uid-г нь сольсон.

main.py файл
slave.py файл
Хариу
uid нь 1337 (P.S :L33T… Nice!) үед флаг маань гарч байна
Flag: hz{1337_fl@g\n}

#FLAG 6 - Ransomeware (Writeup by YMCNBYB)
-------
Жич : Уг даалгаврыг тэмцээний явцад гүйцэтгэж чадаагүй болно. :P
Зөв газраа үзсэн ч, нүдээр хайлт хийгээд алдчихсан. :))
-------
Эхлээд сервер дээрх файлууд дунд RANSOMEWARE.php файл байгааг үзсэн бөгөөд, кодноос нь дараах анализыг хийсэн


1) sweetdreams хувьсагчид зөв key өгөх ёстой юм байна.
2) eurythmics хувьсагч байх ёстой.
Ингээд.. /images хавтсан дотор байгаа QR кодуудтай зуралдаж, /var/log/http дотрох логуудыг харж… 1:30 ноцолдсон.. :))
Даанч тэгээд.. Хүн гэдэг ч найдваргүй амьтан юм дөө.



Чөтгөр. :P [log дотор байгааг HZ Team-с тэмцээний дараа асууж олсоон.. :3]
Ингээд “/RANSOMEWARE.php?sweetdreams=K4D0-hzR2&eurythmics=1” гэж дуудаад, флагаа олж авна.


Flag: hz{No0b_R4ns0m3W4r3}

#FLAG 7 - Ring of Health (Writeup by YMCNBYB)
/home хавтасанд flag.b64 файл байсан. Уг файлд тус тусдаа encode-длогдсон base64 тэмдэгтүүд байсан тул дараах кодыг бичснээр тэмдэгтүүдийг тайлж авсан.


Тус тусд нь тайлахад hex кодууд гарч байсан бөгөөд, харгалзах утгуудыг хэвлэж үзээд, терминалын өргөнийг өөрчилснөөр, флагаа олох боломжтой болно. :D


Жич: Screenshot авахад арай тод харагдаж байсан тул, ! болон : тэмдэгтүүдэд A, B үсгүүд хэвлэсэн болно. :)
Flag: hz{flagisart}

#FLAG 8 
Энэхүү даалгаварыг манай баг тэмцээний цаг дууссаны дараа хийсэн бөгөөд home доторх flag -ийг unmount хийх даалгавар байсан юм байна лээ :P Жич: Буруу байж магадгүй шүү


Flag: hz{k33p_calm_and_k33p_h@cking}

За энгээд бидний хийж чадсан даалгаврууд эд нар байсан ба энэ удаагын Харуул Занги тэмцээний 2-р шатанд 9-р байранд орсон болов ч эхний долоон байрыг цааш финалын шатанд үлдээхээр болсон юм. Хүндэтгэсэн: "rebellion" баг.



Comments

  1. Flag: hz{k33p_calm_and_k33p_h@cking}


    Энэ буруу шүү..

    ---

    Хорчин-заавар : ltrace "./rev" гээд үз.. Оролтоо өгсний дараах процесс дунд чинь флаг чинь байгаа..

    Arch_linux_is_fun ... хавьцаа нэг юм байна лээ.. :)

    ReplyDelete

Post a Comment

Popular posts from this blog

Миний Герман хэл өөрөө бие дааж сурсан түүх

Миний бодлоор Герман хэл ч гэлтгүй гадаад хэл сурна гэдэг нь цэвэр өөрөөс хамаарна гэж боддог. Одоогийн байдлаар би Англи, Герман хэлийг өөрөө бие дааж үзсэн байна. Хүн хамгийн эхлээд өөрөөсөө яагаад энэ хэлийг сурах ёстой вэ гэж асууж, тодорхой зорилго үүсгэх ёстой. Миний хувьд Герман хэл нь Герман улсад суралцахад зайлшгүй шаардлагатай хэл байсан бөгөөд хамгийн анх 1 сургалтын газар (Нэрийг нь дурдаад яахав) очоод би Германд сурах хүсэлтэй байна Герман хэлийг 1 жилийн дотор сурах боломжтой юу? Энэнд та бүхэн тусалж чадах уу? гэж асуухад "Манай Курсд анхан шатнаас эхэлж суугаад одоо хүртэл наад түвшинд чинь очиж чадаагүй хүмүүс зөндөө байдаг, наад түвшинд чинь очиход 3 жил шаардагддаг" гэж хэлж байсан. Тэгээд би за яахав курсд сууж үзье гээд 7 хоног сууж үзсэн бөгөөд үнэхээр тэсэлгүй төлбөр мөнгөө ч хаяаад гарж байсан. Яагаад вэ гэвэл хэлний курс бол хэлний курс л байдаг юм байна гэж ойлгож авсан. Зүгээр л нэг дүрэм 7 хоног үзээд, гэрийн даалгавар өгөхөд тэрийг нь ганц

Haruulzangi2018 1-р шат #Writeup

"Харуул занги" тэмцээн нь цахим магадлан шинжилгээ, ёс зүйт довтолгоо болон хамгаалалт гэсэн үндсэн хэсгүүдтэй. Энэхүү тэмцээн нь хууль, ёс зүйд нийцүүлэн хакерийн үйл ажиллагааг хүлээн зөвшөөрөх, гүйцэтгүүлэх, олон нийтэд үзүүлэх боломжийг бий болгох, мөн онцгой чухал мэдээлэл, эд хөрөнгийг нууцлах, хамгаалах хэрэгцээ, шаардлагыг ойлгуулахыг эрмэлзэнэ. Энэхүү блог постоороо "Харуул Занги 2018" тэмцээний 1-р шатны даалгаваруудын Writeup-уудыг оруулж байна.  #Flag 1: Scam Scam (Forensic) (Writeup by Mantis) Энэхүү даалгавар нь Bitcoin Address-ийг lookup хийх байсан бөгөөд https://bitcoinwhoswho.com  хаягаас "Olivia Lopez" гэж хайх ба энэхүү BTC Address нь flag юм. Flag: HZ{ 1PLeWmzN3vzpbUX7EE1xy9EJFMMcSf7zTu } #Flag 2: Can u see it (Forensic)  Энэхүү даалгавар нь files.zip файл-ийг татаж аваад задлахад маш олон файл гарж ирэх бөгөөд аль нэг файл дотор нь Flag байгаа гээд энэ дунд ганц тусдаа өөр хэмжээтэй файлыг олоод нээж flag-аа гарг