[Cyber Jawara 2020 Qualification] – Home Folder

Pada soal ini diberikan zip archive yang berisi direktori home linux pada umumnya.Pada direktori tersebut, terdapat beberapa file yang bisa menuntun kita pada flag: .bash_history: Menyimpan command-command yang pernah di eksekusi flag.zip: Berisi flag.txt pass.txt: Berisi password untuk zip file Hal pertama yang kami coba adalah langsung menggunakan isi file pass.txt untuk melakukan unzip terhadap […]

[Cyber Jawara 2020 Qualification] – Syscall

Pada soal ini, sesuai dengan deskripsi soal, kita diminta untuk melakukan syscall. Mari kita coba lihat isi netcat. Program memberikan address untuk alamat flag yang akan berubah setiap saat nc di eksekusi. Kemudian, program akan meminta input nomor syscall, kemudian argument yang diperlukan untuk syscall yang ingin dipanggil. Namun, terdapat beberapa syscall yang di blacklist. […]

[Cyber Jawara 2020 Qualification] – ROP

Pada soal ini, peserta tidak diberikan binary, melainkan hanya informasi mengenai binary yang berjalan di server. Dari informasi yang diberikan pada deskripsi soal, binary yang berjalan memiliki konfigurasi kurang lebih sebagai berikut: RELRO: Partial RELRO Canary: Disabled NX: Enabled PIE: No PIE Selain itu diberikan informasi dari file elf_info dimana kita dapat mengetahui architecture dari […]

[Angstrom CTF 2020] – canary

Diberikan sebuah binary dengan konfigurasi sebagai berikut: Berikut adalah list dari semua fungsi pada binary: Berikut adalah pseudocode dari fungsi yang memiliki celah:

Dilihat program menggunakan gets() yang memiliki kelemahan buffer overflow dan printf(&format) memiliki kelemahan format string attack. Tujuan dari soal ini adalah untuk memanggil fungsi flag(). Namun dari nama soal dan konfigurasi binary, terdapat stack canary […]

[Joints2020] – crackme

Diberikan sebuah binary 64 bit not stripped. Pseudocode dari fungsi main adalah sebagai berikut:

Dilihat program meminta input sepanjang 25 karakter dan kemudian input akan diproses oleh fungsi checker() dan bila hasil dari checker() adalah true maka fungsi unlock() akan dipanggil. Berikut pseudocode dari fungsi unlock():

Fungsi tersebut akan membuka file flag.txt pada server nc. Berikut pseudocode dari fungsi checker():

[PicoCTF 2019] – NewOverflow2

Diberikan sebuah binary dengan konfigurasi sebagai berikut: Berikut adalah list fungsi yang ada dalam binary: Jika kita lihat isi fungsi win_fn akan terlihat sebagai berikut:

Untuk bisa mendapatkan flag, kita harus membuat fungsi win_fn1 dan win_fn2 menjadi true. Berikut isi dari kedua fungsi tersebut:

Disini terlihat bahwa untuk membuat value dari win1 […]

[PicoCTF 2018] – ropchain

Untuk soal ini, kita diberikan sebuah file binary dan source code C.

Untuk konfigurasi file binary masih sama seperti writeup ini. Dilihat dari source code C yang kita dapat, kita harus mendapatkan value true pada fungsi win1 dan win2 untuk bisa mendapatkan flag yang terdapat pada fungsi flag. Tapi permasalahannya ketiga fungsi tersebut tidak […]

[CSAW CTF Qualification Round 2019] – baby boi

Diberikan sebuah binary, libc library, dan source code C:

Dari konfigurasi binary ini, tiap poin mempunyai maksud tersendiri: Binary yang diberikan adalah 64-bit binary dan Not Stripped Partial RELRO: RELRO sendiri adalah singkatan dari Relocation Read-Only, dimana dalam hal ini yang digunakan adalah Partial RELRO yang berarti untuk Global Offset Table (GOT) dan Procedure […]

[HackToday 2019 Qualification] – memepy

Note: Soal ini baru diselesaikan penulis setelah kompetisi selesai dan dapat sentilan clue dari tim lain. (Credits goes to who gave the writer clue) Clue:

Diberikan sebuah web. Sepertinya web ini meminta input sebuah link. Tapi, dari clue yang diberikan, tidak terlihat bahwa karakter yang di replace merupakan untuk link URL. Dan dari judul soal sepertinya […]