Soal forensik final Gemastik XII di Telkom University. Poin 200
Intro
File yang diberikan berupa
$ file *
images.png: PNG image data, 358 x 141, 8-bit colormap, non-interlaced
trafik-gemastik12.pcapng: pcap-ng capture file - version 1.0
images.png yang diterima menerangkan bagaimana File Transfer Protocol (FTP) bekerja
TLDR
- FTP Packet filter
- Analisis paket
- Dump JPG File
- Recover file
- Dapatkan password ZIP
- Get the flag
Full Steps
Sesuai dengan judul soal dan images.png yang sudah sangat amat terang jelas mengarah pada FTP, maka file trafik-gemastik12.pcapng dibuka dengan wireshark
dan difilter ftp
Pada paket no. 356, terdapat aktivitas yang menarik dimana dilakukan request terhadap file
/home/gemastik12/files/file/data-gemastik.jpg
Dilakukan pencarian terhadap file data-gemastik.jpg dengan cara mencari FF D8 FF (hex-value dari JPG), kemudian follow tcp streams tersebut, dump as raw dan simpan sebagai data-gemastik.jpg
data-gemastik.jpg
$ file data-gemastik.jpg
data-gemastik.jpg: JPEG image data, JFIF standard 1.01, resolution (DPI), density 300x300, segment length 16, Exif Standard: [TIFF image data, big-endian, direntries=4, manufacturer=Canon, model=Canon EOS 5D Mark III], baseline, precision 8, 510x340, components 3
Kemudian dilakukan pencarian terhadap file lain di data-gemastik.jpg menggunakan binwalk
$ binwalk data-gemastik.jpg
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
0 0x0 JPEG image data, JFIF standard 1.01
30 0x1E TIFF image data, big-endian, offset of first image directory: 8
22337 0x5741 Zip archive data, at least v1.0 to extract, compressed size: 93051, uncompressed size: 93051, name: data.png
115426 0x1C2E2 Zip archive data, at least v2.0 to extract, compressed size: 206330, uncompressed size: 210266, name: flag-diproteksi.pdf
321805 0x4E90D Zip archive data, at least v1.0 to extract, compressed size: 322317, uncompressed size: 322317, name: tree.jpg
644441 0x9D559 End of Zip archive, footer length: 22
Recover semuanya dengan foremost
$ foremost data-gemastik.jpg
Processing: data-gemastik.jpg
|foundat=data.png�PNG
foundat=flag-diproteksi.pdf�Rcp%\̈́۶�b���b[/�'�L<I&�1ыm۶�Ŷ�ݭu��ت���{���>���R�l,Ի{Sld�d����
foundat=tree.jpg����
*|
File zip yang di-recover berisi
$ unzip 00000043.zip
Archive: 00000043.zip
extracting: data.png
inflating: flag-diproteksi.pdf
extracting: tree.jpg
Tidak semudah itu ferguso - Panitia gemastik12
File PDF tidak dapat dibuka karena password protected, asumsi selanjutnya adalah password disembunyikan di salah satu gambar, antara data.png atau tree.jpg, sehingga kemudian dilakukan zsteg
.
$ zsteg data.png
meta Raw profile type APP1.. text: "\ngeneric profile\n 202\n4578696600004d4d002a000000080004010e00020000001f0000003e0128000300000001\n0002000002130003000000010001000088250004000000010000005e000000004e4f2043\n4f444520455845435554494f4e20414c4c4f574544204845524500000004000100020000\n00024e000000000200050000000300000094000300020000000245000000000400050000\n0003000000ac000000000000002b0000000100000036000000010001914000001d1b0000\n0009000000010000003a0000000100004eb100001000\n"
b1,g,msb,xy .. file: PGP\011Secret Key -
b1,rgb,lsb,xy .. text: "cGFzc3dvcmQgcGRmIGZpbGUgYWRhbGFoIGdhbGl0ZXJ1c3NhbXBhaWQ0cDR0a2F3YW4="
b2,r,msb,xy .. text: "@UUUUUUUUA"
b2,g,msb,xy .. text: "TUUUUUUU"
b2,rgba,lsb,xy .. text: "{k?g#s?{cs"
b2,abgr,msb,xy .. text: "GCSSSSSSSSSSSSSSS"
b3,rgba,lsb,xy .. text: "?Wu?wwwWu?s"
b4,r,lsb,xy .. text: "fUEEEU#2 "
b4,r,msb,xy .. text: "DD\"\"33333333\"\"\"DD"
b4,g,lsb,xy .. text: "3#\"3vwfgvffvvuB#"
b4,g,msb,xy .. text: ";3;3;33w"
b4,b,lsb,xy .. text: "gfwwgfgv"
b4,b,msb,xy .. text: "ffff\"\"\"\"DTUU"
b4,rgb,lsb,xy .. text: "c62b'2b'#c)3"
b4,bgr,lsb,xy .. text: "3b6\"b7\"c'#c9"
b4,abgr,msb,xy .. text: "h_`o(o(o"
Decode string
cGFzc3dvcmQgcGRmIGZpbGUgYWRhbGFoIGdhbGl0ZXJ1c3NhbXBhaWQ0cDR0a2F3YW4=
$ echo 'cGFzc3dvcmQgcGRmIGZpbGUgYWRhbGFoIGdhbGl0ZXJ1c3NhbXBhaWQ0cDR0a2F3YW4=' | base64 -d
password pdf file adalah galiterussampaid4p4tkawan
Buka file flag-diproteksi.pdf dengan password galiterussampaid4p4tkawan, didapatkan flagnya
Flag
gemastik12{a4e5e3b7ac929b5ec11726f7820cb1cd}
Shortcut
Cek dahulu apakah ada string flag di dalam paket
$ strings trafik-gemastik12.pcapng | grep -i flag
flag-diproteksi.pdf
flag-diproteksi.pdf
Jika ada, gunakan filter tcp contains flag di Wireshark
, kemudian follow tcp stream tersebut dan dump file data-gemastik.jpg, kemudian dapat dilanjutkan dengan step 5 dan seterusnya seperti biasa.
Rant
Saya benci cheese kimbap