Pengikut

Tampilkan postingan dengan label CTF. Tampilkan semua postingan
Tampilkan postingan dengan label CTF. Tampilkan semua postingan

Rabu, 26 Februari 2025

PicoCTF(3) - keygenme.py (mendapat full version) - Reverse Engineering


 

1. Pengenalan


Link mode CTF (login dulu): DISINI

Langsung download file (py) nya: DISINI

Ok, kalau sebelumnya kita di CTF-RST itu steganography dan forensik. Kini saya akan membahas tema reverse engineering (rekayasa kode balik), yang artinya kita merekayasa suatu script agar melakukan apa yang kita mau. Hal ini wajib banget karena kalau mau jadi cyber security, ya kalian harus bisa coding kalau mau gak mau.

 Jadi kini kita lebih berhadapan pada kode, di sini saya memecahkan level CTF ini dengan menganalisa script yang diberikan. Agar kalian bisa cepat memahami pembahasan ini kalian harus sudah paham akan dasar-dasar python dan beberapa library (untuk library, sebenarnya bisa kalian terawang sendiri).


2. Pemetaan algoritma dalam script


Aduh jujur kalau membahas seluruh kode dalam script nya panjang banget. Tapi saya sarankan kalian baca dan pahami algoritma dalam script ini, siapa tahu berguna kan. Kalau kalian males, coba denger lagu BLUE YUNGKAI sambil baca ini script biar berasa lagi baca kisah cinta, wkwkwk.



Jadi bayangin aja kita punya aplikasi python yang mengarahkan pada alat tentang tata letak bintang galaksi, kita disini bertujuan untuk mendapat full version nya karena script ini bersifat trial version jadi gak lengkap karena bintang galaksi yang kita cari bernama "SAG-A" atau "Sagitarius-A" itu gak ada. dan katanya kita harus di galaksi itu untuk mendapat lisensi agar mendapat full version nya. Anggap aja dia sedang berbohong (pembohong publik 😹). 

saya bahas opsi "abc" nya aja deh. kalau "a" itu buat kita mengetahui tata letak bintang dan radiusnya yang berada di daftar dictionary dalam script ini. Opsi "b" itu terkunci karena kita harus full version dulu. opsi "c" untuk memasukkan kunci lisensi untuk mendapat script full version nya.



Sekilas mungkin hanya biasa saja, tapi jika lu udah baca semua source codenya dari awal sampai akhir. Pasti lu paham bahwa ternyata kata "x" delapan kali di key license yang merupakan kode unik yang harus dicari dan username "PRITCHARD" dijadiin literal biner. Karena ini akan digunakan untuk di gunakan dengan source code yang terletak di akhir source code dengan nama variable "full_version".



 Di gambar ini sebenarnya yang perlu diperhatiin yang variabel full_version nya aja. Karena yang dibawahnya itu saya yang lagi decrypt variable full_version nya tapi gagal. Itulah kenapa, saya memutuskan untuk mencari kunci lisensinya.


EA, kepanjangan ya! wkwkwk. singkatnya ini program untuk mengecek input kita agar valid. Nah, si program ini menggunakan username kita yang sudah di jadikan literal binary dan di ubah ke suatu proses cryptografi dengan format sha256. Ada urutannya juga tuh, "45362718". Otomatis kita bisa pakai dong buat nyari kode uniknya.


Nah udah saya modif tuh, biar bisa print setiap urutan dan flagnya. tinggal kita run deh.


Sip kita sudah dapat full version nya, tapi ternyata bintang "SAG-A" yang kita cari gak ada di full version guys :(. Jadi mana flag nya? flagnya adalah kunci lisensi yang kita gunakan untuk mendapat full versionnya.

flag: picoCTF{1n_7h3_|<3y_of_54ef6292}

catatan: flag ini tidak terjamin benar di picoCTF nya, bisa jadi telah dirubah agar tidak sama oleh developernya. 

Sekian

Minggu, 12 Januari 2025

CTF-RST(2): Cute Cerberus.

 


Halo semuanya, gimana kabarnya?. Di CTF kali ini kita masih berhubungan dengan gambar tapi dengan cara analisis yang berbeda. Jika tadi membahas soal steganography kini kita membahas akan forensik. Ok langsung aja kita ke pembahasannya.

Kita dikasih gambar yang merupakan target/file yang akan kita cek, gambar ini berupa gambar anime biasa berjumlah 3 gadis perempuan (imut banget woilah). Dengan nama file: "cute_cerberus.jpg".



Sekilas hanya foto biasa dan format isinya juga begitu saja, jadi kita ingin melihat bagian metadatanya!. Metadata adalah informasi yang diberikan oleh pengguna atau pembuat gambar untuk dijadikan informasi umum pada suatu file, tidak hanya file saja. Gmail, akun, dan web juga punya metadata. Jika kalian bingung kalian bisa lihat ilustrasi gambar ini.


Untuk melihat suatu metadata kalian bisa pakai tool bernama "exiftool". sebenarnya kalian bisa pakai metadata checker online di web tapi kalau mau langsung di terminal. Kalian pakai command:

~ sudo apt install exiftool

~ exiftool <file>


output:


Nah!, di bagian "copyright". Ada format base64 yang kalau kita decode/ubah ke teks dengan command:

~ echo "Q1RGUlNUe3MwTl8wZl9oNEQzNX0=" | base64 -d

Maka akan keluar berupa flag yang kita cari:   CTFRST{s0N_0f_h4D35}
Sekian.

Jumat, 10 Januari 2025

CTF-RST(1): Jangan mudah tertipu.



Halo teman-teman bagaimana kabar kalian?, kali ini saya akan sedikit membahas salah satu level CTF dari web bernama Rajawali Cyber Team. Jika kalian berminat kalian bisa ke sini CTFRST. Ok tanpa basa-basi persiapkan buku catatan kalian jika ada hal penting yang bisa kalian catat dari postingan ini yang mungkin bisa membantu kalian nanti.

Singkatnya di level CTF ini kita disuruh untuk mendapat pesan rahasia dari suatu file image (katanya kita disuruh untuk mencari pesan tersebut). akan tetapi ketika dibuka image-nya berisikan seperti ini.


Lah, pesan rahasianya mana? sekilas mungkin hanya sebuah gambar. Karena itu kita ingin melihat suatu yang lebih dalam!, kita ingin tahu apa format isi yang membentuk file ini, apakah ada pesan yang dimaksud? masih ingat soal command "cat" dan "strings"?. Jadi cat berfungsi untuk menampilkan isi file secara polos, jadi binary + text yang ada di suatu gambar ditampilkan semua. Tapi kalau pakai strings kita bisa melihat unsur "human readable" atau huruf yang bisa dibaca manusia pada suatu file.

strings RSTstegsteg.jpg

output:


Wah apaan nih? pas saya scroll ke atas sampai mentok kok kayak ada yang gak asing ya?, ini membuat saya teringat akan satu tool yang bernama "steghide". Jadi tool ini berfungsi untuk menyembunyikan file pada suatu image, dan biasanya tanda-tanda gambar yang disisipi file oleh steghide memiliki format header atau bagian atas format strings seperti pada gambar diatas. Kalau kalian mau belajar lebih lanjut akan tool ini kalian bisa lihat di youtube atau lainnya.

~ steghide extract -sf RSTstegsteg.jpg
(Kalau diminta password/passphrase, kosongin aja langsung enter)

output:


Nah!, kita dapat file bernama "steganopayload485402.txt". File ini kalau di lihat berisi flag yang merupakan pesan rahasia dari image tersebut, tinggal kita submit deh.

flag: CTFRST{JANGANMUDAHTERTIPU}