Transcript
  • Write-up CTF Indonesian Backtrack Team

    BlackValentine:Hack The Dragon By nganggur

    I. Website

    1. Web-1 {Directory Listing} | Flag : primal split

    Link Soal : http://198.50.174.68/soalweb/Web1/

    Tools : httrack

    Proof of Concept :

    - Download seluruh isi dari web1 menggunakan httrack agar mudah melihat directory listing

    beserta isi secara recursive dengan opsi R.

    - Analisa isi directory listing yang telah di download tadi menggunakan ls -l -R, ternyata terdapat

    beberapa file yang mencurigakan menurut saya.. haha..

    - Mari kita lihat isi file tersebut menggunakan file manager ny kali, copy path folder

    mencurigakan tersebut a/c - Copy (2)/d/a/c - Copy - Copy - Copy - Copy - Copy - Copy -

    Copy/b/b - Copy - Copy - Copy - Copy - Copy (3) lalu tekan ctrl+L dan paste location nya.

    Nb : sesuaikan dengan location anda.. klo ane seperti ini

    /root/Desktop/Web1/198.50.174.68/soalweb/Web1/a/c - Copy (2)/d/a/c - Copy - Copy

    - Copy - Copy - Copy - Copy - Copy/b/b - Copy - Copy - Copy - Copy - Copy (3)

    http://198.50.174.68/soalweb/Web1/

  • - Isi dari file flag.txt adalah clue nya yaitu ulti dan di flag.png adalah flag nya, kalau di dota

    ulti nya panda yaitu primal split.. jadi flag ny adalah primal split.. wkwkkw.. ane modal

    googling buat nyari flag nya, ane bukan gamer soal ny.. haha..

    - Flag : primal split

    2. Web-2 {Lucky Visitor} | Flag: 3nt3GGWPBr0

    Link Soal : http://198.50.174.68/soalweb/Web2/

    Tools : Add-Ons Mozilla : Firebug, Hackbar

    Proof of Concept :

    - Lihat pada bagian web The 1234567890 th visitor, the prize awarded | You are 2699 visitor,

    disini kita kudu menjadi visitor 1234567890 untuk mendapatkan award. Oke kita liat pada bagian

    cookies, mungkin ada sesuatu yang bisa di anu-anu. Haha

    - gunakan add ons firefox yaitu firebug untuk melihat cookies pada web2.

    http://198.50.174.68/soalweb/Web2/

  • - setelah di edit cookies dari visitor 2699 menjadi 1234567890 refresh atau tekan F5 dan

    dapatkan flag nya.. :-D

    3. Web-3 {Jarum Dalam Jerami} | Flag: L3mp3rItUWueNakLoh

    Link Soal : http://198.50.174.68/soalweb/Web3/

    Tools : Add-Ons Mozilla : Firebug, Hackbar, cryptii.com

    Proof of Concept :

    - View source atau gunakan firebug untuk melihat source dari web3 ini, ada yang menarik

    dari source tersebut, yaitu pada javascript nya

    - mari kita periksa apa isi dari script javascript tersebut. Buka source nya di link berikut :

    http://198.50.174.68/soalweb/Web3/js/decrypt_key1.js

    http://198.50.174.68/soalweb/Web3/http://198.50.174.68/soalweb/Web3/js/decrypt_key1.js

  • - karena saya kurang mengerti bahasa pemrograman, maka saya gunakan firasat saya, pada

    variable coy terlihat ada value seperti angka, dan angka itu adalah angka decimal.

    - Mari kita copy sederet angka tersebut ke notepad++ dan replace seluruh symbol yang ada

    di depan angka, replace dengan spasi.

    Hasil replace sebagai berikut

    - Mari kita coba decode menggunakan decimal online decoder puny cryptii.com. dugaan

    saya ternyata benar, di dalam deretan angka decimal tersebut terdapat pesan yang sudah

    di encode, dan ternyata pesan yang telah kita decode tadi masih ter encode

    menggunakan ROT13.

  • - Decode lagi dari ROT13 ke TEXT dan didapatkan decrypt_key : 3ngk0ng-Kr4mAT

    - Lalu masukkan decrypt key tersebut ke form yang ada di halaman awal,

  • - Taraa.. ada muncul form login, trus buka firebug untuk dan inspect element pada bagian

    form, dan didapatkan value dXNlcg== yang udah di encode ke base64, kita liat wujud

    asli dari hasil encode tersebut, ternyata hasil decode nya adalah user, kita coba loncat

    dari user biasa menjadi user root. root encode ke base64 dan hasil nya adalah

    cm9vdA== ganti value user biasa tadi menjadi root yang telah kita encode barusan,

    seperti gambar di bawah, setelah itu login menggunakan weak username & password

    login LOL, wkwkwk

    - Wihhh.. disuruh nyari flag ny di view-source, yasudah nurut aja.. wkwkkw

  • - Tanpa basa basi ayo cari flag nya, pake ctrl+f aja.. wkwkwk.. eh ternyata bener kata clue

    yang ada di web ny.. wkwkwk

    4. Web-4 {Legenda Naga Misterius} | Flag: N4g4!LluSs10N

    Link Soal : http://198.50.174.68/soalweb/Web4/

    Tools : Add-Ons Mozilla : Firebug, Gimp, Online Barcode Decoder

    Proof of Concept :

    - Pada halaman awal jika dilihat dengan teliti di tengah logo naga ada seperti titik, nah kita

    coba liat pake firebug, ternyata ada beberapa directory. Setelah ditelusuri satu per satu,

    salah 1 directory yaitu N4hLoe(!)n!t4ny4 ada 3 gambar.

    http://198.50.174.68/soalweb/Web4/

  • - Berikut adalah 3 list gambar nya.

    - buka satu per satu gambar tersebut. Saya masih bingung sama 3 gambar ini, dan saya liat

    lagi clue pada halaman awal, yaitu cari anak nya di perut naga itu dan gunakan teleskop

    atau kaca pembesar yok kita nurut lagi sama clue nya. Wkwkkw, sapa tau beruntung

    kan..

    - gambar yang sesuai dengan clue tersebut adalah gambar banner ibt .jpg karena

    gambar tersebut ada gambar naga nya.. wkkwk.. kita pake clue berikut nya, gunakan

    teleskop atau kaca pembesar untuk melihat di perut naga..dapat dilihat pada gambar di

    bawah, untuk scan barcode disini tidak bisa menggunakan barcode scanner pada android

    nah. mari kita manfaatkan tools yang udah kita install di kali linux yaitu gimp, atau

    mungkin yang ahli photoshop bisa juga.. wkwkwk

  • - kita potong pada bagian barcode nya menggunakan crop untuk memotong barcode

    tersebut.

    - ubah warna latar belakang nya menjadi putih, didapatkan hasil seperti berikut:

    - Hasil White Balance menggunakan gimp

  • - Scan lah barcode tersebut menggunakan online barcode scanner, atau bisa mencoba

    pada link berikut : http://www.onlinebarcodereader.com/

    - Hasil scan nya adalah sebagai berikut :

    http://www.onlinebarcodereader.com/

  • II. Forensic

    1. Forensic1 {Dominos} | Flag: j0k3r

    Tools : exiftool, base64 decoder, hashkiller.co.uk

    Proof of Concept :

    - buka file gambar joker musuhnya batman. Wkwkkw.. siapa tau ada apa2 lagi kayak kasus

    web di atas.. wkkwkw.. ternyata gak ada apa2 vroh.. :v

    - mari cari peruntungan dengan menganalisis file gambar tersebut, ternyata ada yang aneh

    di comment nya.. haha.. coba kita copy trus decode di terminal pake base64 d.

    - apa apaan ini.. -_- ternyata masih lanjut lagi vroh teka teki nya.. wkwkk, kirain dah kelar..

    haha.

    - bagi yang gak ngerti hasil hash ny itu jenis apa kita pake hash-identifier buat ngidentifikasi

    hash jenis apa.

    - kalo dah berhasil di identifikasi jenis nya mari kita decrypt wihh.. dapet vrohh.. hasil

    decrypt ny pake md5 decrypter

    - tenang vrohh.. blm selesai sampai disini.. wkwkkw.. masih ada clue.zip.. mari kita extract

    dengan password j0k3r, ada 2 file disitu. Kita kudu nyari password ny lagi buat extract

    jokerBrangkas.zip, wkwkwk

  • - buka history.txt dan klo di liat dengan kasat mata ada beberapa topography seperti huruf

    besar dan angka. Setelah difilter di dapatkan hasil nya adalah

    TP4J4KAPR113UM3B9I4C pake buat buka berangkas nya si joker.

    - Dan hasil dari berangkas nya adalah file PL49!.txt yang di dalam nya ada isi fL4G0nd0L-

    j0K3rS

    - Ternyata flag nya menipu.. setelah mencoba submit beberapa clue password yang tadi

    ditemukan, di dapatlah j0k3r sebagai flag ny.. :3

    2. Forensic2 {Aw} | Flag: D3v1-Kin4L-pUtRI

    Tools : exiftool, hackbar

    Proof of Concept :

    - buka file gambar cewe.. siapa tau ada apa2 lagi kayak kasus web di atas.. wkkwkw..

    ternyata gak ada apa2 vroh.. :v (copas dari atas vroh.. haha.. males ngetik)

    - mari cari peruntungan dengan menganalisis file gambar tersebut, ternyata ada yang aneh

    di comment nya.. haha.. coba kita copy trus decode di terminal pake hex to string pake

    hackbar aja yak.. wkwkwk.

    - decode menggunakan hackbar dengan urutan {hex to character base64decode

    base64decode base64decode base64decode base64decode base64decode

    base64decode }

    - dan di dapatkan hasil decode nya: JkT48-K1n4L

    - gunakan kata kunci tersebut untuk membuka file ke0n9.zip.

    - setelah di extract, sebuah file r4cUn yang di dalamnya terdapat flag yaitu Fl4g ->> D3v1-

    Kin4L-pUtRI

  • 3. Forensic3 {Ular Ganas} | Flag: ku@5AT5H@NyAN93S@

    Tools : hackbar

    Proof of Concept :

    - Pada saat dibuka, file tersebut error. Dan saya coba buka file tersebut dengan notepad++,

    ternyata file tersebut bukan file mp3 asli, akan tetapi mengandung hex Zzzzzz -_-

    - Temuan tadi coba kita copy ke notepad++ dan replace symbol : dan hasilnya kita copy

    ke hackbar untuk di decode.

    - Decode menggunakan hackbar dengan urutan {hex to character base64decode

    base64decode base64decodeROT13}

    - Setelah di decode menggunakan ROT13 decoder di web cryptii.com, maka di dapatkan

    hasilnya berupa script python.

    - Copy script python tersebut dan perbaiki script python tersebut menjadi seperti gambar

    berikut :

  • - Selanjutnya jalankan script nya, dan didapatkan sebuah flag

    4. Forensic4 {IMG Error} | Flag: 1bt3amj4b0det4b3k

    Tools : hackbar

    Proof of Concept :

    - Pada saat dibuka, file tersebut error. Dan saya coba buka file tersebut dengan notepad++,

    ternyata file tersebut bukan file png asli, akan tetapi mengandung base64 Zzzzzz -_-

    - Oke gak pake lama base64 tadi kita decode, ternyata di header nya terdapat PNG.

    - Wah ternyata ini file png.. kita decode pake base64 d trus di output ke file.png. seperti

    di bawah ini:

    - Dan di dapatlah sebuah barcode.. mari kita scan barcode tersebut.. pake online barcode

    reader yang tadi ane dah share, wkwk.. karena link nya lagi mati kita pake tools aja lah..

    hehe.. dapet juga kan flag nya 1bT3aMj4b0Det4b3K.. :v

    - Nb : pada waktu submit flag pasti pada dapet flag masih salah kan.. coba ganti huruf besar

    jadi huruf kecil.. :v

  • 5. Forensic5 {Koala Langka} | Flag: K4PT3NP4T1MUR4

    Tools : exiftool, online morse decoder

    Proof of Concept :

    - Disini ada file zip yang berisikan file, dan terpassword, untuk membuka file zip tersebut

    disediakan password.txt, clue nya adalah SHA256 jadikan binary, dan hasil didapatkan

    hasilnya sbb : 01010011 01001000 01000001 00110010 00110101 00110110 dari binary

    tersebut adalah password untuk membuka file Koala.zip, buka file koala.zip tadi.

    - Di dalamnya terdapat gambar koala.

    - Analisa metadata dari koala tersebut menggunakan exiftool, dan lihatlah di bagian

    comment ada sesuatu yang mencurigakan, jika kita copas di google pasti aka nada yang

    sama, gak usah pusing kita lihat aja write-up nya dan ikutin,. Hahaa

    https://github.com/ctfs/write-ups-2014/blob/master/confidence-ds-ctf-

    teaser/stegano50/README.md

    - Ubah huruf {A .} dan {B -}. (mengubah menjadi morse code) Gunakan command line

    bro.. haha, pake notepad++ juga bisa ko.. :D

    - Copy morse tersebut dan translate menggunakan online translator.. hehe

  • 6. Forensic6 {PDF Blank} | Flag: IrJendr4LSo3DirMan

    Tools : notepad++, hackbar

    Proof of Concept :

    - Lihat isi dari file pdf tersebut menggunakan notepad++ dan pada bagian javascript

    terdapat sederet hex 68 74 74 70 25 33 41 25 32 66 25 32 66 62 69 74 2e 6c 79 25 32

    66 31 76 31 4e 6d 35 4d

    - Decode hex tersebut menggunakan hackbar, dan didapatkan hasil string nya adalah

    sebuah link: http://bit.ly/1v1Nm5M

    - buka link tersebut, dan ternyata barcode lagi.. haha, mari kita pecahkan barcode nya.

    Dengan tools yang kita pake tadi, soal ny link online barcode nya lagi mati.. haha, dan di

    dapatkan sebuah flag yaitu IrJendr4LSo3DirMan

    http://bit.ly/1v1Nm5M

  • III. Crypto

    1. Crypto1 | Flag: rfc527 Tools : hackbar, cryptii.com, rumkin.com

    Proof of Concept :

    - No. 1 : gunakan hackbar untuk inverse string tersebut, hasilnya seperti di bawah.

    - No. 2 : adalah altbash cipher, gunakan online translator

    www.rumkin.com/tools/cipher/atbash.php

    - No. 3 : Not Found

    - No. 4 : gunakan http://cryptii.com/navajo/text translate ke text, hasilnya adalah THEY HEADTHAT SCRATCH

    - Mari kita cari di google apa yang dimaksud dari 3 hasil decode di atas, dan didapatkan flag nya adalah rfc527

    2. Crypto2 | Flag: di balik tirai merah Tools : ruby script

    Proof of Concept :

    - Find me here?? 3 444 0 22 2 555 444 55 0 8 444 777 2 444 0 6 33 777 2 44

  • - Baca lagi dengan teliti ceritanya, disitu ada clue hape cyberking.. saya teringat hape saya

    yang jadul, dan disitu saya kadang merasa sedih.. T.T masih aja nih orang pake hape jadul

    padahal bisa beli tiket ke german..

    - Oke coba saya decrypt pake script php, cuman ngereplace doing.. haha, ternyata bener,

    dapetlah flag nya : (ternyata lagi maen petak umpet.. wkwkwk)

    3. Crypto3 | Flag: one hundred-dollar Tools : uutool.com, uudecode webutils.pl

    Proof of Concept :

    - Buka file yourkey, terdapat string base64, dan ketika di decrypt hasilnya Salted__

    - Mari kita telaah jenis string tersebut, setelah gooling ternyata ada beberapa blog yang

    memberikan PoC nya, tetapi tetap saja masih belum bisa di decrypt, di blog tersebut

    menggunakan AES encryption untuk membuka pesan yang ter enkripsi seperti kasus ini,

    lalu saya coba peruntungan pada online decrypter, dan mencoba satu per satu decrypter

    yang ada pada uttool.com, dan ternyata ada 1 enkripsi yang cocok yaitu trileDES. Oke

    sudah ktemu, mari dilanjutkan.

    - Buka file yourkey, lalu decrypt isinya menggunakan online decrypter triple DES, bisa

    dibuka pada link berikut http://uttool.com/encryption/tripleDES/default.aspx, karena

    enkripsi tipe ini membutuhkan key untuk men decrypt nya maka kita gunakan temuan

    sebuah pamphlet yang ada pada file readme yaitu hackvalentine.

    - Setelah di decrypt maka hasilnya seperti di bawah:

    http://uttool.com/encryption/tripleDES/default.aspx

  • - Lalu hasil enkripsinya ternyata adalah uuencode, disini kita bisa gunakan uuencode offline

    yang udah di install di distro masing-masing, atau gunakan tools online juga bisa, disini

    saya menggunakan tools online biar bisa pada langsung melakukan PoC tidak susah-susah

    nginstall di distronya lagi.. hehe.. http://www.webutils.pl/UUencode

    - Hasil decrypt tadi di save ke file txt.

    http://www.webutils.pl/UUencode

  • - Jika sudah di save upload ke online decoder tadi.

    - Lalu klik decode, dan akhir nya dapat juga vroh file asli nya.jangan lupa di save to file ya..

    klo g di save ntar g bakal dapet flag ny dong.. :v hahaa

    - Oke.. buka file final tersebut menggunakan hexeditor, lalu di header pertama terdapat

    hex 05 4B 03 ubah hex tersebut menjadi 37 7A BC.

  • - Lalu extract isi file final yang telah diperbarui header file nya tersebut menggunakan izarc

    atau 7zip, dan terdapat sebuah string untuk para peserta untuk di decode.

    - Oke mari kita decode pesan tersebut, ambil penggalan dari depan biar kita tau pola nya,

    saya masih belum menemukan decoder ny soal ny,, saya jg gtw itu jenis cipher apaan.. -

    _- kita coba manual saja.. haha.. ambil di line pertama dulu, { TSA HTM EAE UTR NEI IOC

    TFA E D} kita bikin pola seperti ini TSA123, HTM 123.dst nah kita ambil yang nomor

    1 saja. Klo gabung line pertama tadi jadi THE UNITED, mari kita lanjutkan ke nomor 2,

    STATE OF, lanjutkan ke nmr 3, AMERICA jadi klo digabung THE UNITED STATE OF

    AMERICA., kalo masih bingung gpp nunggu panitia yang nyempurnain PoC nya.. wkwkwk

    - Jika kita decode semua line nya maka di dapatkan THE UNITED STATES AMERICA IN GOD

    WE TRUST BENJAMIN FRANKLIN INDEPENDENCE HALL

    - Silahkan search keyword tersebut di google, one hundred-dollar lah flag nya.. :D

    4. Crypto4 | Flag: pudge Tools : dcode.fr

    Proof of Concept :

    - Setelah melakukan information gathering saya mendapatkan online decrypter di dcode.fr

    http://www.dcode.fr/dancing-men-cipher.

    - Okehh.. kita coba klik satu-satu sesuai yang ada pada gambar crypto pivot tersebut,

    setelah di decrypt didapatlah pesan chin-copa-chin-copa

    - Klo googling pasti nemu tuh.. haha

    http://www.dcode.fr/dancing-men-cipher

  • 5. Crypto5(Band Jorok) | Flag: partynaked Tools : -

    Proof of Concept :

    - Disini saya mendapatkan soal pertama, sebelum soal itu di revisi jadi sesuai dengan clue,

    nah disini saya mau share pengalaman untuk penyelesaian nya yaitu karena clue sebelum

    soal di revisi ternyata ngibulin saya, saya agak stress nih.. -_- udah beberapa kombinasi

    dan beberapa kemungkinan password yang saya coba bikin wordlistnya pada saat di brute

    tidak ktemu juga. Saya putuskan menggunakan peruntungan lagi dengan membaca baik-

    baik clue nya.. Perkenalkan nama saya Morita Takahiro akrab dipanggil Taka ,Saya akan

    mengadakan konser pada tanggal 24 November 2014 nanti saya coba mencari info

    konser si taka, dan dapatlah 1 link youtube

    https://www.youtube.com/watch?v=uTzxCNHoX-g.

    - Kita coba peruntungan dengan mengekstrak file zip tersebut dari tulisan yang di ambil di

    baju bagian depan yang dipake si TAKA, yaitu PARTYNAKED

    - Dan file zip pun ter extract.. haha.. dan di foto nya sudah jelas banget ada tulisan

    PARTYNAKED.. kita coba submit tulisan itu sebagai flag.. dan berhasil brooo.. :v anda

    mendapatkan flag.

    https://www.youtube.com/watch?v=uTzxCNHoX-g

  • IV. Misc

    1. Misc 1 | Flag: lefie Tools : hackbar, webutils.pl, stegsolve

    Proof of Concept :

    - hint pada misi ini adalah when the end is start selalu ingat hint nya - oke kita gunakan clue ini pada soal.txt dengan inversing string pada soal tersebut

    menggunakan hackbar

    - jika sudah save string tersebut ke sebuah file txt. Lalu upload ke web yang tadi ane share

    uudecode.

    - klik decode dan dapatkan hasil decodenya, dengan klik Save to file.. hahai

  • - pada waktu di extract akan dimintai password, nah coba kita crack di tahap selanjutnya.

    - crack password nya menggunakan fcrackzip dan menggunakan wordlist bawaan kali biar

    cepet .. hehe. Dan didapatkan password ny yaitu 654321, dan password nya ternyata

    sesuai dengan clue tadi when the end is start ohohoho..

    - extract file tersebut dengan password tadi.

    - setelah file crackme tadi di extract akan ada file zip lagi.. extract lagi broo..

    - disini saya menggunakan tools stegsolve untuk mengubah frame-frame yang ada di

    gambar tersebut, seperti gosok-gosok koin berhadiah.. haha

  • - awalnya saya terkecoh dengan flag yang ada pada write-up dari CTF luar.. karena md5 file

    4.jpg sama dengan file soal CTF luar. Lalu saya teringat dengan hint di awal tadi ingat

    selalu hint nya.. yaitu when the end is start coba kita cari peruntungan dengan

    bruteforce kata kunci yang ada pada gambar tersebut, yaitu Eiffel, eifel, effel, efel. kita

    reverse 4 kombinasi kata tersebut dan hasilnya adalah sbb: lefe ,leffe ,lefie ,leffie

    - setelah dicoba beberapa kata kunci ternyata yang cocok adalah lefie

    - jadi Flag : lefie

    2. Misc 2 {Gamebotis}| Flag: G4m3F0reDuC4t10N Tools : RPGMaker

    Proof of Concept :

    - Pada misi ini kita dikasih kasus sebuah game.. haha.. maenin aja ahh. Jangan di unpack

    kasian yang dah bikin.. haha.. tapi kalo mau cepat ya di unpack aja.. haha.. klo saya sih

    ngikutin instruksi game nya aja.. haha.. biar greget.

    - Pada saat menjalankan Game.exe, pasti akan muncul error seperti ini:

    - Cari solusi nya di google, dan ketemu penyelesaian nya.. ternyata karena RPGVXAce nya

    belum ter install di kompi ane.. :D

  • - Mari kita download RPGVXAce nya di link berikut :

    http://www.rpgmakerweb.com/download/additional/run-time-packages

    - Klik agree and download

    - Jika sudah ke download lalu install RPG nya.. klo udah langsung maenin dah Game.exe

    nya. Langsung masuk ke pintu utama.. haha

    - Mari kita cari flag nya.. ahaha..

    - Pertanyaan pertama pasti dah pada tau jawabannya. Haha..

    http://www.rpgmakerweb.com/download/additional/run-time-packages

  • - Pertanyaan ke 2 juga pasti dah pada tau pan lomba nya ini diselenggarain untuk

    memperingati ultah IBT.. :v

    - Pertanyaan ke 3 ini agak membingungkan.. haha.. kita coba brute aja.. jika jawaban saya

    salah maka pilih yang lain sampai benar.. dan di dapatkan pilihan yang ke 4.

    - Jika benar nanti akan tampil pesan, nice one, monggo dilanjutken.. :v

    - Setelah itu kita masuk ke urutan ke 2 di box nya. Pilih yang paling kanan vroh..

    - Klo udah nanti akan muncul tampilan hitam, pencet aja [esc]

  • - Kalo udah nanti akan ada tampilan karakter nya.. pilih save

    - Lalu pilih di file 1 aja.. haha.. terserah sih.. disitu ada 4 pilihan..

    - Klo udah nanti bakal ada file save-save an game nya muncul di folder Gamebotis.

    - Analisis file save-save an tersebut.. dan di dapatlah flag nya.. hahaii..

  • V. Reverse

    1. Reverse1 {iamlegend}| Flag: dragon Tools : -

    Proof of Concept :

    - Untuk misi ini saya sudah nyerah mw ngutak2ik di IDA.. :3 - Saya gunakan kata kunci iamlegend nya.. iamlegend dalam kompetisi ini artinya adalah

    antara naga, dragon, backtrack. Saya coba submit kata kunci yang ke 2 dan saya

    mendapatkan flag nya.

    2. Reverse2 {secretbyte}| Flag:

    9c986c3da83c73558375e3777175edcc1a0c456b5ba166f9d393b1a104c46cd8b1ad86b56818ba

    e12c945b83da3c0836810be1fbcb89321ee3d10ab52ce82ba7 Tools : gdb, nasm, bash script

    Proof of Concept :

    - Decode file soal dengan base64 decoder, lalu outputkan ke sebuah file hasil, didapatkan

    hasil dari base64 decode adalah sebuah string hex.

    - Dump menjadi assembly menggunakan ndisasm.

    - Jika sudah lihat isi dump assembly nya di file hasill.asm

    - Perbaiki file asm tersebut langkah pertama ambil kolom ke 3,4,5 dan masukkan ke

    dalam file yang baru yaitu hasilfix.asm menggunakan bash script.

  • - Jika sudah perbaiki file asm tersebut menjadi seperti berikut :

    global _start

    _start:

    xor eax,eax

    push eax

    push dword 0x76202373

    push dword 0x79242273

    push dword 0x74232071

    push dword 0x70257224

    push dword 0x24707372

    push dword 0x78792322

    push dword 0x23277024

    push dword 0x23717079

    push dword 0x77727971

    push dword 0x22722025

    push dword 0x72792374

    push dword 0x75782273

    push dword 0x70242023

    push dword 0x79707977

    push dword 0x74237779

    push dword 0x25207023

    push dword 0x79252277

    push dword 0x75227571

    push dword 0x70207023

    push dword 0x72787225

    push dword 0x78277777

    push dword 0x70202374

    push dword 0x23777475

    push dword 0x22712070

    push dword 0x22222524

    push dword 0x74767076

    push dword 0x76767224

    push dword 0x74767279

    push dword 0x74747276

    push dword 0x22727920

    push dword 0x25722277

    push dword 0x79782278

    push esp

    pop esi

    mov edi,esi

    mov edx,edi

    cld

    mov ecx,0x80

    mov ebx,0x41

    xor eax,eax

    push eax

    CTF:

    lodsb

    xor eax,ebx

    stosb

    loop CTF

    push esp

    pop esi

    int3

    db 0x0a

  • - Oke. Mari kita compile pake VPS yg 32.. haha, yang belum puny nasm install dlu yak apt-get install nasm..

    :v

    Nb : compile di arsitektur 32/86 bit.. jangan di 64 bit.. g bakal mau jalan ntar..

    - Debug file jadilah tersebut dengan debugger gdb, kalo belum punya install dlu yak apt-

    get install gdb.. :v root@server:/home# gdb ./jadilah

    GNU gdb (GDB) 7.6.1-ubuntu

    Copyright (C) 2013 Free Software Foundation, Inc.

    License GPLv3+: GNU GPL version 3 or later

    This is free software: you are free to change and redistribute it.

    There is NO WARRANTY, to the extent permitted by law. Type "show copying"

    and "show warranty" for details.

    This GDB was configured as "i686-linux-gnu".

    For bug reporting instructions, please see:

    ...

    Reading symbols from /home/jadilah...done.

    (gdb) l

    1 global _start

    2 _start:

    3 xor eax,eax

    4 push eax

    5 push dword 0x76202373

    6 push dword 0x79242273

    7 push dword 0x74232071

    8 push dword 0x70257224

    9 push dword 0x24707372

    10 push dword 0x78792322

    (gdb)

    11 push dword 0x23277024

    12 push dword 0x23717079

    13 push dword 0x77727971

    14 push dword 0x22722025

    15 push dword 0x72792374

    16 push dword 0x75782273

    17 push dword 0x70242023

    18 push dword 0x79707977

    19 push dword 0x74237779

    20 push dword 0x25207023

    (gdb)

    21 push dword 0x79252277

    22 push dword 0x75227571

    23 push dword 0x70207023

    24 push dword 0x72787225

    25 push dword 0x78277777

    26 push dword 0x70202374

    27 push dword 0x23777475

    28 push dword 0x22712070

    29 push dword 0x22222524

    30 push dword 0x74767076

    (gdb)

    31 push dword 0x76767224

    32 push dword 0x74767279

  • 33 push dword 0x74747276

    34 push dword 0x22727920

    35 push dword 0x25722277

    36 push dword 0x79782278

    37 push esp

    38 pop esi

    39 mov edi,esi

    40 mov edx,edi

    (gdb)

    41 cld

    42 mov ecx,0x80

    43 mov ebx,0x41

    44 xor eax,eax

    45 push eax

    46 CTF:

    47 lodsb

    48 xor eax,ebx

    49 stosb

    50 loop CTF

    (gdb)

    51 push esp

    52 pop esi

    53 int3

    54 db 0x0a

    (gdb) b 52

    Breakpoint 1 at 0x804811e: file hasilfix.asm, line 52.

    (gdb) run

    Starting program: /home/./jadilah

    Breakpoint 1, 0x0804811e in ?? ()

    (gdb) x/5s $esp

    0xbffff784: "\210\367\377\277"

    0xbffff789: ""

    0xbffff78a: ""

    0xbffff78b: ""

    0xbffff78c:

    "9c986c3da83c73558375e3777175edcc1a0c456b5ba166f9d393b1a104c46cd8b1ad86b56818ba

    e12c945b83da3c0836810be1fbcb89321ee3d10ab52ce82ba7"

    (gdb)

    - Nah dapet dah flag nya di register memory 0xbffff78c

    Quote : mohon maaf jika kata-kata saya yang kurang berkenan.. tolong di edit lagi jika

    masih ada penyebutan kata yang salah, kurang lebih nya mohon di maafkan.. jzkllh