Writeup CTFR Sofa

Khairu Aqsara Sudirman

Khairu Aqsara Sudirman

Mar 26, 2021 — 2 mins read
Sofa adalah tempat duduk yang nyaman, Semakin empuk semakin nyaman h3h3 Hint : Cari arti dari S0F0, Kemudian ambil 16 Byte / 32 Bit. Pastikan, Jangan ambil Size dari offset tersebut. Hasil tadi, kalkukasi dengan XOR yang sudah di berikan. Good Luck and Enjoy :D

Download : https://mega.nz/#!w8Yz2YgY!GE2tgYFnNqDs64XfPPqJoFi-fQjS9Q3z464H2Yn2Mdo

Encreted Flag: 435446527b7830725f773174685f7330665f63346462f56e3477324e73324e6633216582

Setelah didownload kita diberikan 1 buah file gambar sofa, jadi saya rasa cukup masuk akal judul challenge dengan gambarnya, keliatannya juga itu sofa enak buat duduk :D.

Sofa disini bukan kursi atau sejenisnya, sofa atau biasanya disebut dengan S0F0 merupakan salah satu segment dari gambar yang berformat jpeg atau jpg, yang memiliki baseline 0xff,0xc0, kita bisa melihat data segmen S0F0 dengan JPEGSnoop

*** Marker: SOF0 (Baseline DCT) (xFFC0) ***
  OFFSET: 0x0000009A
  Frame header length = 17
  Precision = 8
  Number of Lines = 384
  Samples per Line = 512
  Image Size = 512 x 384
  Raw Image Orientation = Landscape
  Number of Img components = 3
    Component[1]: ID=0x01, Samp Fac=0x11 (Subsamp 1 x 1), Quant Tbl Sel=0x00 (Lum: Y)
    Component[2]: ID=0x02, Samp Fac=0x11 (Subsamp 1 x 1), Quant Tbl Sel=0x01 (Chrom: Cb)
    Component[3]: ID=0x03, Samp Fac=0x11 (Subsamp 1 x 1), Quant Tbl Sel=0x01 (Chrom: Cr)

challenge ini mengharuskan kita mengambil 32 bit atau 16 byte dari segmen S0F0, sesuai petunjuknya "jangan ambil dari offset tersebut" kita harus mengambil dari setelah offset 0xffc0, karena jika kita lihat menggunakan hexeditor segment S0F0 ada pada offset 0x0000009A, ofset tersebut harus dikurang 4 sehingga 0x0000009A - 0x4 = 0x0000009E karena 4 bit pertama merupakan signature segment S0F0 yaitu 0xffc0

xxd -s +0x0000009E -l 16 sofa.jpg
0000009e: 0801 8002 0003 0111 0002 1101 0311 01ff  ................

sehingga kita mendapatkan angka hexa

 0801 8002 0003 0111 0002 1101 0311 01ff

kemudian angka hexa tersebut harus kita xor dengan flag yang diberikan untuk mendapatkan flag yang sebenarnya, saya menggunakan online tools http://xor.pw/ untuk menghitungnya

80180020003011100021101031101ff
XOR Dengan
435446527b7830725f773174685f7330665f63346462f56e3477324e73324e6633216582
=
CTFR{x0r_w1th_s0f_c4lcul4t3_s0_g00d}
Forensic writeup ctf
Read More

Writeup CTFR Salah Fokus

setelah di decompiler dengan ghidra, ternyata banyak banget fungsi yang di obfuscated, tetapi ada beberapa fungsi yang tidak di obfuscated, misalnya seperti fungsi main() dan fungsi encrypt()

Read More

Writeup CTFR Alphabet

Apa yang kalian ketahui tentang Alphabet, Sebuah Huruf A sampai Z dan Angka 0 sampai 9 kan. Nah saya beri Contoh tentang Enkripsi ini "Ayam" akan menjadi "Alfa Yankee Alfa Mike". Enkripsi nya sangat simpel, kita hanya mencocokkan huruf paling depannya saja, tapi bagaimana dengan angka ? Contoh "123" akan menjadi "One Two Three". Sudah paham kan sampe sini, Nah coba decode Flag ini