[misc][ bonus - dpmptsp.sukabumikab.go.id · [misc][ bonus ] nama tim : [ g e t h u k ] * r u b a h...
TRANSCRIPT
[MISC][Bonus]
NAMA TIM : [Gethuk]*Rubah sesuai dengan nama tim anda
ZONA : [Zona 2. Banten, Jawa Barat & DKI Jakarta] *Rubah sesuai dengan zona
anda Rabu 30 Agustus 2017
Ketua Tim
1. Ghuniyu Fattah Rozaq
Member 1. Ari Apridana 2. Naufal Abrian Ismiyushar
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{ini_bonus_untuk_kamu} Tools : type
Technical Report Analisa karakter ASCII dengan menggunakan “type (Windows)” atau “strings
(Linux)” dan terdapat flag didalamnya
Conclusion Flag disembunyikan didalam metadata gambar.
[Forensics][SQL Injection]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{sql_injection_in_th3_n3tw0rk_} Tools : type, Wireshark
Technical Report Lakukan analisa dengan menggunakan Wireshark, disin kami melakukan Ekstraksi
pada object HTTP karena kemungkinan SQL Injection menggunakan protokol HTTP dan kemungkinan menyerang login form.
dari hasil ekstarksi diaras kami melakukan pencarian string dengan menggunakan type/strings dengan filter “CJ2017{”
dan dapatlah flagnya
Conclusion Penyerang menggunakan metode SQL Injection untuk masuk kedalam
http://192.168.56.101/login dan terdapat flag didalamnya
[MISC][GetPass]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{m!sC_r3v_postTRUE} Tools : IDA
Technical Report Melakukan reverse engineering file binary menggunakan IDA pro , terlihat key yang
dibuat pengecekan berbentuk plain text biasa yaitu “30082017” sehingga langsung dapat di lihat seperti berikut .
ketika akan disubmit terdapat tricky lagi dimana kita harus melakukan inspect element untuk mengubah id menjadi true .
Conclusion Key berbentuk hardcode di aplikasi sehingga dengan mudah di lihat menggunakan
tehnik reverse engineering.
[Forensics][What The Flag]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{HAA-RF-NHA} Tools : 7zip, foremost
Technical Report Menganalisa file WhatTheFlag1.7z yang setelah di ekstrak terdapat file
WhatTheFlag.001
Setelah itu menganalisa dan membongkar file WhatTheFlag.001 dengan menggunakan foremost dengan menghasilkan empat gambar berformat jpg.
Dari keempat file tersebut, salah satunya terdapat gambar yang menuliskan flag
Conclusion Flag disimpan pada file hasil join dengan menyisipkan beberapa gambar dengan
hanya satu gambar yang didalamnya terdapat flagnya.
[REVERSE][Other]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{Ex!T_ReV_Go_To_L!n3} Tools : IDA
Technical Report Melakukan reverse engineering file elf menggunakan aplikasi IDA pro, dan
ditemukan lagi keynya tidak di hardcode sehingga dengan mudah didapat.
yaitu : CJREVERSEPWN
Conclusion Key berbentuk harcode diaplikasi sehingga dengan mudah dilihat menggunakan
tehnik reverse engineering.
[WEB][Dark]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{w3b4dm1n_INDeX_B4ckUp} Tools : type
Technical Report Pertama melakukan pengecekan directory menggunakan tools dirb dan
menemukan directory /dark/webadmin/ dimana diproteksi menggunakan HTTP Autentication. namun terdapat kerentanan sql injection yang langsung bisa kita bypass loginya menggunakan
user : admin’ or ‘1’=’1
pass : ‘ or ‘1’=’1
Conclusion Type HTTP Autentication yang digunakan terhubung ke database, namun tidak ada
proteksi terhadap kerentanan sql injection sehingga dapat di exploitasi dengan mudah.
[Web][login]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{SQLmap_make_you_lazy_kiddo!} Tools : SQLMAP
Technical Report Saat melakukan enumeration ditemukan file robots.txt yang berisi informasi file
backup.
Disallow: /backup.zip
namun file zip tersebut di password sehingga kita tidak dapat membukanya.namun dengan error kesalahan pass kita dapat mengetahui file apa saja yang ada di dalam directory website utama seperti berikut :
dan setelah mengecek file remember.txt ternyata berisi password untuk membuka file zip.
setelah terbuka terdapat file backup index.php yang berisi informasi query dari sql. dari situ kita dapat melakukan serangan sql injection menggunakan sqlmap tapi kita tambahkan prefix agar sqlmap berjalan dengan payload substring yang sudah kita dapatkan di file index.php.
prefix yang di setting di sqlmap : "))))))))))))))))))))))))))))), 1, 8))
sqlmap.py -u "http://cj2017.ctf.idsirtii.or.id:3333/login/" --data "name=asas&pw=a" -p name --random-agent --prefix='"))))))))))))))))))))))))))))), 1, 8))' --level=2 --risk=2 -D login -T tb_flag --dump -v 5 hasilnya :
Conclusion Terdapat kerentanan sql injection dimana querynya menggunakan
subtring.normalnya jika langsung di jalankan menggunakan sqlmap tidak akan bisa karena exploitnya akan bekerja jika payload sql injectionya benar yaitu terdapat "))))))))))))))))))))))))))))), 1, 8)). jadi ditambahkan prefix di sqlmap supaya prefix ini akan ditambahkan diepan payload sqlmap saat dijalankan.
[Binary Exploitation][Jawara17]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{Where_Is_Uncut_Text} Tools : GDB,OBJDUMP,IDA
Technical Report Setelah melakukan pengecekan menggunakan IDA dan debugging menggunakann
GDB ternyata binary mempunyai kerentanan buffer overflow pada byte ke 128+8 untuk save EBP . kebetulan di aplikasi sudah di sediakan method cyber() yang berisi fungsi system untuk read file flag.txt.
kemudian kita mendapatkan alamat method cyber() menggunakan OBJDUMP yaitu pada 0x00000000004005b6
langsung saja kita lakukan exploitasi untuk menimpa register EIP dengan alamat cyber() *ditulis menggunakan format litle endian.
seperti berikut :
Conclusion Terdapat kerentanan buffer overflow pada fungsi read yang digunakan aplikasi
sehingga dapat di exploitasi dengan menimpa register EIP dengan alamat method cyber() yang terdapat fungsi system untuk read flag.txt.
[Web][Restricted]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{h!dd3N_P3s4N_ADM!N} Tools : type
Technical Report Pertama kita membuat user untuk login dengan username dan password
“okokokokokok” . disana terdapat menu flag dimana hanya admin yang dapat mengakses fitur tersebut.
namun ini bisa dibypass dengan mengubah nama kita menjadi “admin” di menu SETTING seperti berikut dengan sedikit sentuhan menggunakan inspect element :
Conclusion Terdapat kerentanan dibagian authorization dimana semua user dapat mengedit
nama menjadi “admin” dan begitu juga file flag.php hanya mengecek nama saja .
[Binary Exploitation][Zero Day Market]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{y0_d4w6_buy_zero_day_with_zero_day} Tools : IDA
Technical Report Kami melakukan reverse enginering si aplikasi elf tersebut menggunakan IDA PRO.
dimana terbaca alur program , si aplikasi hanya memberikan kita 10BTC untuk belanja, namun harga flag melebihi harga yang diberikan. untuk membypassnya kita akalin inputan pada fitur sell karena inputan pada fitur sell saat menuliskan “price” di tampung di variable v8 dimana v8 ini bertipe signed integer. tipe signed integer tidak dapat diberikan angka bernilai minus seperti -1,-2 dll karena akan mengembalikan nilai yang lebih besar.
dengan begitu kita hanya perlu memberikan nilai harga minus lebih besar dari total BTC yang kita punya misal -7 .
Conclusion Aplikasi mempunyai kerentanan dimana variable yang menyimpan price disimpan
di variable yang bertipe signed integer yaitu v8, dan dapat dengan mudah di bypass untuk mendapatkan nilai yang lebih besar .
[MISC][Math Random]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{SimPles0ck3tpro6rammingMadeItEAsy} Tools : type
Technical Report diberikan Service operasi matematika secara random pada cj2k17.ctf.idsirtii.or.id
3939 dan peserta hanya diberikan 30 detik untuk dapat menjawab 10 pertanyanya
maka dengan menggunakan python kita membangun bot sederhana untuk menghitung dan mengirim jawaban [https://pastebin.com/RfbwdYnB]
sehingga ketika dijalankan bot langsung bisa menjawab dengan cepat dan tepat
Conclusion
Flag diberikan hanya ketika kita bisa menjawab pertanyaan dengan tepat dan cepat sehingga disini kita dilatik untuk menyelesaikan masalah dengan membangun program sederhana sebagai pemecah masalah tsb.
[Reverse][APK Malware]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{apk_M4lw4r3_andro!d} Tools : Emulator, Burpsuite
Technical Report Terpadat sebuah Game Flight Simulator yang diindikasikan ber”malware”. langsung
saja kami menginstall pada emulator dan menjalankannya lalu melakukan interception terhadap service FlightSimulator
dan ternyata aplikasi melakukan get kepada URL mencurigakan
http://203.34.119.230:1337/mCvplFIkd5Kq0anC83fmHQpX3fbBe3yAEmBfpaengDNRQyaH3X7Tpwkj8UNn0IoLOBvsMdNNAd-WNhOry2ZxoOgXwT6wSj5j3xMXe4hvo5gK482UzWSd0zM4MG8kzXofSouai6yT2-Gur3CiCMo52ulTl90eBPrEioj5e0axW7yxt5KbCk_K95yuKyQWqP6yzCuLXeE08k3gUS7NRr
yang mana URL tersebut merupakan flagnya
Conclusion Malware melakukan get pada sebuah URL yang menuju Flag, dengan adanya
malware ini attacker bisa saja mengirim data-data rahasia dari dalam device tanpa diketahui.
[WEB][Evil Client]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{c00ki3_SALT_p3h4pE} Tools : Cookie Manager
Technical Report Pertama kita melakukan analisa di source codenya. dimana dia akan mengecek
apabila cookie “env=development” akan melakukan dump beberapa informasi seperti $_SERVER,$_SESSION,$_POST,$GET,$ENV. kita edit cookie menggunakan cookie editor firefox.
disini kita harus membuat hasil dari MD5 $_SESSION[‘usersalt’] jika digabung dengan key nilainya sama dengan MD5 $_SESSION[‘password’]. dan kita sudah mendapatkan nilai password yaitu a20cea90d186d4cae1ac366317bc953d.
dan user salt kita dalah : 2705.
kami membuat script bruteforce mengungkan python dan mendapatkan key yang tepat
Conclusion pada soal ini kita bermain” dengan salt, kita diuntungkan dengan diberikan hash
password dan user salt kemudian kita bruteforce menggunakan script python.
[Reverse]
[Obfuscated PHP Backdoor]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{this_is_weevely_and_only_skiddies_use_this_without_knowing_how_the_obfuscation_works} Tools :
Technical Report Terdapat file php yang masih rusak atau di lakukan obfuscated. untuk mendapatkan
flagnya kita harus membuat script php tersebut supaya dapat dibaca dengan jelas.
Setelah itu kami rapikan kode diatas sehingga diperoleh hasil seperti berikut.
Dari kode diatas kita tahu bahwa $n merupakan fungsi yang memerlukan 3 parameter, dan parameter ke 2 dan 3 diambil dari input user a dan b. Apabila kita menggunakan a = 12 dan b = 11 maka $n adalah fungsi str_replace. Apabila kita menjalankannya dan menampilkan variable F maka akan muncul kode seperti dibawah.
Yang apabila kita rapikan akan terlihat seperti ini.
Dari sini kita tahu bahwa `TU_KU_KcQQbQXeKMZPK[ZXeK_WUPPUQ_Ka_QK`TU_KcU`T[a`KWZ[cUZSKT[cK`TQK[NRa_OM`U[ZKc[^W_ adalah flag yang dirubah dengan fungsi y. Kita bisa membuat reverse fungsi tersebut seperti ini.
Dan apabila kita jalankan akan muncul flag seperti ini.
Conclusion File tsb merupakan file php backdoor yang telah di Obfuscated, kebanyak dari
attacker (khususnya skiddies) menggunakan file php tanpa mengetahui isinya, dan disini kita ditantang untuk dapat mengetahui seluruh fungsi dan isi file php tsb.
[Forensics][PNG]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{k4l4U_K4u_s3n4nG_h4ti_t3puk_t4ng4n} Tools : binwalk
Technical Report Pada soal ini kami mendapat file i_love_PNG.7z, setelah kami ekstrak terdapat file i
love PNG.png.
Setelah itu kami mencoba ekstrak dengan binwalk dan didapat tiga file zlib dari file i love PNG.png seperti berikut
Conclusion File PNG yang diberikan berisi file lain yang dimana flagnya didapat dengan
menganalisa lebih lanjut dari 3 file isinya
[SOAL 17][NHA-13]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{knights_&_magic} Tools : EFS DiskRecovery
Technical Report Diberikan sebuah file VHD (Virtual Harddrive) yang di encrypt kemungkinan
menggunakan EFS atau BitLocker. Lalu dengan menggunakan EFS Recovery kami mencoba melakukan Recovery dari VHD tersebut. Pertama kami mount ke Drive Letter E: dan ternyata VHD tersebut memiliki nama yang unik yaitu
disk mount yang dilakukan oleh EFS memang lebih Advance dibanding
diskmgmt.msc. sehingga dengan password tsb kami dapat membuka VHD yang berisi beberapa gambar
seperti biasa kami melakukan analisa string pada ketiga file tersebut
dan mendapatkan 3 flag yang terpisah
Conclusion Sebuah File VHD yang terinkripsi pun masih dapat kita lakukan Recovery hal ini
dapat mengingaktkan kita bahwa untuk menghilangkan data belum tentu mudah.
[SOAL 18][Read Assembly]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{%%%real_h4x0r_can_read_assembly%%%} Tools : type
Technical Report Diberikan sebuah service yang meminta password ketika pertama kali dijalankan
dan password tsb telah disediakan panitia dalam bentuk Assembly
alur program sendiri terlihat :
fungsi main memanggil fungsi init lalu fungsi main akan memanggil fungsi check dan fungsi main akan meminta user untuk memasukkan input (password) lalu memanggil fungsi correct untuk melakukan pengecekan password yang terakhir fungsi correct akan mereturn benar jika password sesuai. dengan demikian fungsi check akan memanggil fungsi get_flag yang mana dari funsgi itu file flag dibaca dan ditampilkan
dari alur assembly di fungsi correct didapat bahwa passwordnya adalah XYPVMCJ2017 dan mencoba memasukannya ke service
dan hasilnya berupa flag
Conclusion Peserta diuji kemampuannya untuk menganalisa dan membaca Assebly.
[Binnary Exploitation][RSA KEY]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{cmd_injection_is_still_exist_in_2k17!!!!}
Tools : Anlysis Source Code
Technical Report Pada soal kali ini kita diberikan sebuah aplikasi service untuk menggenerate
RSA-key. seperti berikut :
dari analisa di source code ternyata memungkinkan kita melakukan exploitasi command injection untuk melakukan 2 command sekaligus dengan ;. karena password yang kita input nantinya akan di eksekusi oleh fungsi system() untuk generate RSA menggunakan openssl.
berikut eksekusi command injectionya :
Conclusion Pada soal ini terdapat kerentanan command injection karena tidak ada validasi yang
tepat untuk inputan yang akan di eksekusi menggunakan fungsi system().
[Binary Exploitation]
[RSA Ke Generator 2.0]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{overwriting_array_with_overflow_is_really_c0mm0n} Tools : cat, ls, nc
Technical Report Pada soal ini kami diberi service pada nc cj2k17.ctf.idsirtii.or.id 41337 yang
menjalankan service generate RSA dengan passphare yang kita ketikkan.
Setelah itu kami menganalisa kedua file yang diberikan yaitu rsa_keygen2 yang merupakan binary 64 bit dan rsa_keygen.c yaitu script yang akan menghasilkan nilai key dari rsa_keygen2.
dengan script rsa_keygen2.c seperti berikut https://pastebin.com/SsqcxBVr. Pada file rsa_keygen2 terdapat fungsi escape_gets yang berfungsi untuk mengubah inputan ‘ menjadi ‘\”. Kami menjalankan itu untuk melihat flag.txt dan berhasil dengan inputan 32x ‘ dan command.
Conclusion Pada keygen ini terdapat kelemahan pada fungsi escape_gets yang bisa dilakukan
bypass untuk melakukan command saat menginputkan passphare.
[Web][System Util]
Table of Contents Capture The Flag Report
Executive Summary Flag : CJ2017{from_SQLI_to_Localz_Filez_Incluzion} Tools : Burpsuite
Technical Report Pertama kami mengecek parameter di website, dan terdapat parameter d_id dimana itu paramter query untuk mengambil data dari database. setelah kami melakukan testing ternyata parameter tersebut vulner sql injection.celah sql injection ini dapat dimanfaatkan untuk reaf file menggunakan celah Local File Inclusion di website.
kemudian kita melihat isi dari fie apache2 config menurut clue yang diberikan.
Respon :
disini kita diberi 2 pilihan : 1. read file /etc/apache2/.htpasswd dan crack passwordnya untuk login
2. langsung read isi dari index.php di dalam folder adminmanager
disini kita langsung melakukan read file index.php tersebut.
Conclusion Dalam web yang memiliki vulner SQL Injection ini kita bisa melakukan LFI (Local
File Inclussion) attack dimana attacker dapat membaca file file lokal yang mana ini sangat berbahaya.