Soal Forensik terakhir yang diberikan saat final Hology 2.0 sekitar satu jam sebelum lomba selesai.
Intro
File yang diberikan berupa
$ file icomp.iso
icomp.iso: ISO 9660 CD-ROM filesystem data 'CDROM'
TLDR
- Mount file icomp.iso
- Analisis file _not_imp/capture.pca
- Dapatkan potongan string
- Caesar cipher, kemudian gabungkan
- Get the flag
Full Steps
File merupakan filesystem yang tidak corrupt sehingga dapat langsung dilakukan mount
$ mkdir mont
$ mount -o loop icomp.iso mont/
mount: /root/ctf/games/hology/final/foren/ico/mont: WARNING: device write-protected, mounted read-only.
List direktori dan files dari file yang telah di-mount adalah
$ tree .
.
├── music
│ ├── lofi_hip.mp3
│ ├── lofi_hip.mp4
│ └── ________.mp4
├── _not_imp
│ └── capture.pca
├── o_rly_me
│ ├── 0134yojs.png
│ ├── 0am9d54g.jpg
│ ├── 0bo6tiwq.png
│ ├── 0bwodqzz.png
│ ├── 0_tj42qm.png
│ ├── 2dxjsn8b.png
│ ├── 2gosupce.png
│ ├── 2i94r0q6.jpg
│ ├── 3n33b9ti.jpg
│ ├── 4eray631.png
│ ├── 57899685.jpg
│ ├── 5wq2il5c.png
│ ├── 606760dd.jpg
│ ├── 67edfcd4.jpg
│ ├── 69fk05db.png
│ ├── 7s9dknao.png
│ ├── 7waytk88.jpg
│ ├── 7yfq6f5m.jpg
│ ├── 93t0ge4y.png
│ ├── 9j9f409i.png
│ ├── 9jrng7ex.jpg
│ ├── bu33hug8.png
│ ├── cctdqdgh.jpg
│ ├── cihhf9_u.jpg
│ ├── cj0up_hu.jpg
│ ├── clzal9h8.png
│ ├── cmddopvx.jpg
│ ├── cndd1t0x.jpg
│ ├── co3d6_xw.jpg
│ ├── co8uv3xw.jpg
│ ├── cp6wqqdw.jpg
│ ├── cpwvvoow.jpg
│ ├── cqemzsrx.jpg
│ ├── cqtrep7g.png
│ ├── faihjt65.png
│ ├── fawrchqg.jpg
│ ├── fhgzvetg.jpg
│ ├── fkfpsjkh.png
│ ├── fyyavzuh.png
│ ├── gh8in6ib.png
│ ├── hede7w7k.png
│ ├── hyi92jlx.png
│ ├── i3r_rzzh.png
│ ├── i7gy2y2s.jpg
│ ├── ix4dn2p1.png
│ ├── j6638u57.png
│ ├── jwaujogf.jpg
│ ├── kdodwcrl.jpg
│ ├── lceoati.jpg
│ ├── mtfa94x8.png
│ ├── n32e9i08.png
│ ├── ngakak_w.png
│ ├── njxds2vz.png
│ ├── obd9qsjr.png
│ ├── od3hwsrg.jpg
│ ├── okw4hy2d.png
│ ├── oquydsz6.png
│ ├── p8vphvxr.jpg
│ ├── pg92harf.jpg
│ ├── qevqfrs5.png
│ ├── qt2sq6d4.png
│ ├── s1n03jz.png
│ ├── s8d1oirm.png
│ ├── svqff1yh.png
│ ├── ttu7zma3.jpg
│ ├── uryclcdz.png
│ ├── ust5yuxf.png
│ ├── v8hvvdfg.jpg
│ ├── wfev4lgv.png
│ ├── wn76ycse.png
│ ├── xotgimmi.png
│ ├── zpch0vlq.png
│ └── zpcqgkuy.png
├── template
│ ├── fedora_s
│ │ ├── license.txt
│ │ ├── otp
│ │ │ ├── fedor000.otp
│ │ │ ├── fedor001.otp
│ │ │ ├── fedor002.otp
│ │ │ ├── fedor003.otp
│ │ │ ├── fedor004.otp
│ │ │ ├── fedor005.otp
│ │ │ ├── fedor006.otp
│ │ │ ├── fedor007.otp
│ │ │ ├── fedor008.otp
│ │ │ ├── fedora_b.otp
│ │ │ ├── fedora_c.otp
│ │ │ ├── fedora_f.otp
│ │ │ ├── fedora_g.otp
│ │ │ ├── fedora_m.otp
│ │ │ ├── fedora_o.otp
│ │ │ ├── fedora_p.otp
│ │ │ ├── fedora_s.otp
│ │ │ └── fedora_t.otp
│ │ ├── project_.md
│ │ ├── project_.txt
│ │ └── readme.md
│ ├── license.txt
│ ├── otp
│ │ ├── aquarell.otp
│ │ ├── blue_gul.otp
│ │ ├── dark_fad.otp
│ │ ├── dark_gra.otp
│ │ ├── dark_gre.otp
│ │ ├── kanagawa.otp
│ │ ├── oschl000.otp
│ │ ├── oschl001.otp
│ │ ├── oschl002.otp
│ │ ├── oschloe_.otp
│ │ ├── purple_a.otp
│ │ ├── red_menu.otp
│ │ ├── sunflowe.otp
│ │ ├── winter_m.otp
│ │ ├── xinxi000.otp
│ │ ├── xinxi001.otp
│ │ ├── xinxi002.otp
│ │ ├── xinxi003.otp
│ │ ├── xinxi004.otp
│ │ └── xinxinli.otp
│ ├── project_.md
│ ├── project_.txt
│ └── readme.md
└── videos
└── web_php_
├── oop_d000.mp4
├── oop_d001.mp4
├── oop_d002.mp4
├── oop_d003.mp4
├── oop_d004.mp4
├── oop_d005.mp4
├── oop_d006.mp4
├── oop_d007.mp4
├── oop_d008.mp4
├── oop_d009.mp4
├── oop_d00a.mp4
├── oop_d00b.mp4
├── oop_d00c.mp4
├── oop_d00d.mp4
└── oop_dasa.mp4
9 directories, 138 files
Meskipun file dan direktorinya cukup banyak, fokus langsung ditujukan pada _not_imp/captture.pca karena judul soal adalah I(Co)MP yang diasumsikan berasal dari ICMP (Internet Control Message Protocol)
Dengan menggunakan Wireshark
, file capture.pca dapat dianalisis
Pada bagian Data (48 Bytes) di ICMP Protocol, terdapat dua string yang diulang-ulang setiap melakukan request dan reply
String 1
MP1ayha3kp0u MP1aYha3kp0uMP1 aYha3kp0u
String 2
jtw_3em1say4a pjtw_3em1say4a.p jtw_3em1sa
Dengan sedikit menebak, diketahui bahwa string tersebut merupakan hasil Caesar Cipher dengan n=19 sehingga cukup dilakukan decrypt dengan n yang sama. String tersebut menjadi
String 1
FI1trat3di0n FI1tRat3di0nFI1 tRat3di0n
String 2
cmp_3xf1ltr4t icmp_3xf1ltr4t.i cmp_3xf1lt
Potongan flag tersebut kemudian harus disusun agar menjadi flag yang utuh. Sempat bingung dan mengakibatkan submit flag berulang-ulang karena tidak jelas bagaimana penyusunan flag-nya, sampai di 16 menit terakhir lomba muncul Hint yang sangat penting, berisi
- i0n
- 3d
Pola flag langsung ketemu dan solved
Flag
hctf{icmp_3xf1ltr4ti0n_FI1trat3d}
References
- http://rumkin.com/tools/cipher/caesar.php
- https://medium.com/infofl00d1ng/another-shellmates-ctf-write-up-eye-see-ummm-p-e4894bb1f1ae
Rant
Total file sekitar 1 GB, yang kepake cuma 8.1 MB.
Ngerambo submit flag sampe ada 15 kali gara-gara pattern flag-nya kurang jelas, baru setelah Hint muncul bisa solved