Writeup CTFR HP

Khairu Aqsara Sudirman

Khairu Aqsara Sudirman

Mar 25, 2021 — 4 mins read
Mimin diberi sebuah gambar HP yang katanya ada pesan tersembunyi dari gambar ini. "Dari berbagai orang hanya kang forensik yang paham". Nah coba bantu carikan pesan yang tersembunyi tersebut.

Download : https://mega.nz/#!o9BFDIDY!bXwqCN18hmS99rxEKX93MJoK6onQFj9sJuU-Lll8HNY

Karena extensionya jpg jadi pertama-tama discan dulu menggunakan tools JPEGSnoop untuk mencari tau informasi dari gambar yang diberikan, karena ukuran gambar cukup besar, awalnya saya mengira ini bukan challenge Forensic, karena ukuran nya yang cukup besar kemungkinan ada embeded file didalam filenya, tetapi setelah menggunakan binwalk dan foremost tetapi tidak ditemukan ada data lain, oleh karena itu saya menggunakan JPEGSnoop, dengan JPEGSnoop kita bisa melihat lebih jelas informasi-informasi yang ada didalam sebuah gambar jpg, setelah dianalisis ternyata ada tambahan data data dari offset 0x00002EBF sampai 0x00004E7B sebesar 8124 Byte

*** Additional Info ***
NOTE: Data exists after EOF, range: 0x00002EBF-0x00004E7B (8124 bytes)

Sejauh ini sudah bisa dipastikan bahwa ada data yang di embed didalam gambar tersebut, hanya saja belum diketahui data apa itu, jika menggunakan binwalk atau foremost seharusnya jika memang signature file diketahui harusnya bisa langsung di extract, berhubung signature datanya tidak deketahui kemungkinan besar merupakan text yang bisa saja di enkrip untuk menyamarkan data sebenarnya, jika dilihat menggunakan hex editor hasilnya merupakan karakter-karakter yang tidak jelas.

xxd -s +0x00002EBF -l 8124 HP.jpg

00002ebf: 735c 72c4 b7b8 b8c1 72c4 c7c1 72b8 c172  s\r.....r...r..r
00002ecf: c0c1 bbc6 b3c4 b7b6 bbc5 c0c1 b572 c5c7  .............r..
00002edf: c1bb c4b7 c572 c4c7 c1cb 72c4 c1b8 72c7  .....r....r...r.
00002eef: c1cb 7fbd c0b3 baa6 7273 5c72 7782 8a72  ........rs\rw..r
00002eff: b8c1 72c6 c0c7 c1b5 c5bb b672 b372 c6b7  ..r........r.r..
00002f0f: b972 bebe 79c7 c1cb 72b6 c0b3 72b6 c0b7  .r..y...r...r...
00002f1f: bbc4 b872 b372 c2c7 72c0 b9bb a572 735c  ...r.r..r....rs\
00002f2f: 72cb b3b6 c1c6 72c4 b7b6 c4c1 727f 72cb  r.....r.....r.r.
00002f3f: b3be b7b6 72c6 79c0 c196 7280 72c5 c9b3  ....r.y...r.r...
00002f4f: be72 b7be b4b3 b5bb bec2 c2b3 72be beb3  .r..........r...
00002f5f: 72c0 bbba c6bb c95c 72b7 c6b3 c4b7 c2c1  r......\r.......
00002f6f: 72b7 c972 c6b3 bac6 72c7 c1cb 72b7 c4c7  r..r....r...r...
00002f7f: c5c5 b372 b7a9 7280 7274 b7bf 72c4 c1b8  ...r..r.rt..r...
00002f8f: 72b6 b7bd c4c1 c972 c6bb 72c6 c7b4 5c72  r......r..r...\r
00002f9f: beb3 b5bb c6c2 b7bd c572 c5b3 c972 9b74  .........r...r.t
00002faf: 72c5 cbb3 c572 b6c0 b372 c5c7 72b6 b7bb  r....r...r..r...
00002fbf: c4c6 72b3 bfb3 b4b3 be93 72c0 bb72 c5b7  ..r.......r..r..
00002fcf: b6bb c5b7 c472 c1ba c95c 72c5 b7bf 9372  .....r...\r....r
00002fdf: c49f 7273 72c5 c772 b7c8 b7bb beb7 b472  ..rsr..r.......r
00002fef: c679 c0c1 b672 c6c7 9472 7372 bdc5 bbc4  .y...r...rsr....
00002fff: 72b7 bac6 72be beb3 72b7 bdb3 c65c 72b7  r...r...r....\r.
0000300f: c972 b7c5 c7b3 b5b7 b472 b6b7 b7b5 b5c7  .r.......r......
0000301f: c572 c1c6 72b6 b7b7 c6c0 b3c4 b3c7 b972  .r..r..........r
....
....
....
00004e2f: 6748 c284 7a36 73d1 d2b0 a2b0 d230 a2b6  gH..z6s......0..
00004e3f: 73ad bd60 e225 11e2 65ac f905 8757 288e  s..`.%..e....W(.
00004e4f: 9cea cc3e 1a61 a661 4175 2d09 b29b 0776  ...>.a.aAu-....v
00004e5f: 6c1e 58d9 8f56 d6fa ba76 16a6 1be7 c969  l.X..V...v.....i
00004e6f: 7f83 66d7 8b5b 6c6d 6ef7 ffd9            ..f..[lmn...

saya menggunakan command xxd -s +0x00002EBF -l 8124 HP.jpg untuk menampilkan hexdump dari offset 0x00002EBF sejumlah 8124 byte dengan harapan bisa memberikan informasi tambahan, tetapi tetap saja informasinya tidak begitu membantu, akhirnya saya kembali ke asumsi awal, jika ini adalah text yang di enkripsi untuk menyamarkan datanya, data tersebut kemudian saya simpan kedalam sebuah file dan membuat program sederhana untuk melakukan bruteforcing dengan perhitungan aritmatika sederhana yaitu ordinal(data) dikurangi atau ditambah dengan nilai tertentu.

with open('data', 'r', encoding = "ISO-8859-1") as f:
	data = f.read()
	for x in range(80,90):
		chr_string=''
		for c in range(len(data)):
			string = ord(data[c]) - x
			if string >=32 and string <= 126:
				chr_string+=chr(string)
		print(chr_string[::-1])
		print("===============================================")

Dan benar saja, setelah dijalankan dengan perulangan dalam range (0,100) dan melihat hasil bruteforcing saya mendapatkan sebuah data dengan bentuk kalimat berbahasa inggris

Dear Friend , We know you are interested in receiving cutting-edge intelligence . 
If you are not interested in our publications and wish to be removed from 
our lists, simply do NOT respond and ignore this mail....... dst

Sejauh ini sudah bisa dipastikan jika data tersebut merupakan spam mimic, dimana string yang panjang menyembuyikan data yang sebenarnya, saya menggunakan tools Spamimic Decode untuk mendapatkan flagnya, dan hasilnya

CTFR{0nly_f0r3n51c5_m45t3r_c4n_s0lv3_th15_l1k3_y0ur_53lf}
Forensic writeup ctf
Read More

Writeup CTFR Warna Warni

Dari deskripsi challenge nya terdapat informasi "maksimal 127" dan kita diberikan satu gambar yang isinya warna acak (noise) yang tidak beraturan, jadi bisa dipastikan jika flagnya ada dalam pixel warna gambar, karena ada hint maksimal 127 jadi kita mengambil semua warna RGB, saya mencoba mengambil semua pixel pada masing-masing warna seperti RG dan B yang nilainya lebih kecil dari 127 dan merubahnya menjadi karakter, asumsinya angka pada pixel adalah ordinal dari sebuah karakter, setelah mencoba-coba karakter yang bisa terbaca ada pada pixel R (Red)

Read More

Writeup CTFR Sekolah CTFR 1 Dan 2

Diberikan sebuah service pada alamat 103.157.96.13 pada port 7773 untuk Challenge Sekolah CTFR #1 dan Sebuah service pada port 7774, untuk Challenge Sekolah CTFR #2. pada kedua service tersebut dapat menginputkan atau melakukan registrasi sebagai siswa baru, seperti menginputkan nama dan id dari siswa, tetapi juga terdapat satu menu yang hanya bisa diakses oleh data yang memiliki akses admin, perbedaan dari Challenge ini yaitu pada Challenge Sekolah CTFR #2 merupakan perbaikan dari Sekolah CTFR #1.