Tutorial MD5 Collision ( SOAL CTF IBT 2016 )

by Aiden_ - 05-09-2016 at 03:13 PM
From Nothing To Be Something
Moderators
Posts:
49
Joined:
Mar 2016
Likes:
0
Reputation:
0
2 Year Of Member
#1
OP
Posted: 05-09-2016, 03:13 PM (This post was last modified: 05-11-2016, 10:42 AM by Aiden_.)
Assalamualaikum...

Sebelum nya untuk penjelasan mangenai MD5 bisa berkunjung ke  : http://www.ilmuhacking.com/cryptography/...berbahaya/


Ane baru tau masalah MD5 Collision setelah ada soal CTF di ctfs.me serta di beritahu oleh bang Farisv, diajarkan oleh bang DewaMahendra dan di jelaskan oleh bang Sohai..

langsung saja

Study Kasus soal ctf di ctfs.me : 

Judul soal : Authentication Key
Deskripsi : Validate with yours key :) MD5 is beatifull but something weird happen

link soal : ctfs.me/web/authentication/

Apabila kita mencoba upload  dengan file login.key asli ( tanpa di edit ) akan keluar pesan seperti berikut..
[Image: hti6aXZ.png]

Inti nya 1 hal yang ane tau mengenai soal ini, web nya akan memeriksa file .key dan md5sum dari file apabila file dan md5 sum nya sama seperti asli nya akan keluar pesan seperti diatas, tapi apabila bbrp string dalam file login.key diubah akan lolos auth nya tapi dengan syarat MD5SUM nya harus sama dengan file login.key asli nya, untuk itu lahh kita perlu mengubah bbrp string dalam file login.key asli dengan bbrp 'aturan' agar MD5SUM nya bisa sama seperti file login.key asli walau kita mengedit string file login.key tsb..
itu lahh penjabaran dari ane, maaf kalau salah :'(

Setelah membaca artikel di ilmuhacking akhir nya ane sedikit mendapat pencerahan

[Image: hash2.png]

Ane tidak terlalu mengerti dengan rumus pergantian HEX nya, tapi yang ane pahami dari gambar di atas adalah :

( jarak pemisah )
interval hex d1 ke hex 07 adalah 20 hex
interval hex d1 ke hex f1 adalah 46 hex
interval hex d1 ke hex 72 adalah 60 hex
interval hex d1 ke hex 34 adalah 84 hex
interval hex d1 ke hex 28 adalah 110 hex
interval hex d1 ke hex ab adalah 124 hex

hehe hitung manual, maklum msh noobz >_<

lalu mari kita coba implementasikan langsung..

root@kali # wget https://ctfs.me/web/authentication/login.key
root@kali # cp login.key sirius.key

disini saya langsung edit menggunakan salinan asli dari login.key karena akan diubah bbrp string didalam nya.

gunakan hexeditor kesukaan kalian, disini saya menggunakan GHEX

root@kali # ghex sirius.key

Hex login.key asli
[Image: es36pZd.png]

Hex sirius.key ( editan )
[Image: 5YJGzfX.png]
setelah di edit lalu save..

Cara perhitungan pergantian HEX nya yaitu ditambah 8 dan menggunakan hex 16 bit ( [0-9] [a-f] ) dan hex yang diambil adalah hex yang paling depan ( sebelah kiri )
lalu mari kita ganti hex nya sesuai dengan interval di atas

hex 68 diganti menjadi E8
cara perhitungan :
6 + 8 = E
7,8,9,a,b,c,d,e

hex 5F  diganti menjadi DF
cara perhitungan :
5 + 8 = d
6,7,8,9,a,b,c,d

hex 89  diganti menjadi 09
cara perhitungan :
8 + 8 = 0
9,a,b,c,d,e,f,0

hex 7E  diganti menjadi FE
cara perhitungan :
7 + 8 = f
8,9,a,b,c,d,e,f

hex F5  diganti menjadi 75
cara perhitungan :
F + 8 =  7
0,1,2,3,4,5,6,7

hex 1E  diganti menjadi 9E
cara perhitungan :
1 + 8 = 9
2,3,4,5,6,7,8,9

cek md5sum nyaa
root@kali # md5sum *
166a408c697fdf8ea5e3cf36588e4646 login.key
166a408c697fdf8ea5e3cf36588e4646 sirius.key
----------------------------------------------------------------------------
Saat nya uji cobaa

buka kembali situs : https://ctfs.me/web/authentication/
lalu upload file .key yang kita edit tadi
[Image: plq2VjT.png]
Dan akhir nya inspeksi file .key nya lolos dan md5sum nya pun sama dengan file login.key
dan akhir nya berhasil mendapat flag

sekian tutorial yang berantakan dari saya, semoga dapat bermanfaat bagi kita semua..

Special thx to Allah swt then bang Farisv, Bang DewaMahendra, bang sohai dan semua teman2
root@localhost:~# cat something.txt
Dompu Linuxer
I'm Nothing Without Allah
Reply
Find Posts
Staff
Moderators
Posts:
45
Joined:
Mar 2016
Likes:
0
Reputation:
0
2 Year Of Member
#2
Posted: 05-09-2016, 03:26 PM
jejak :D
nice share bang,, nanti pagi coba ah xixihi
Reply
Find Posts
From Nothing To Be Something
Moderators
Posts:
49
Joined:
Mar 2016
Likes:
0
Reputation:
0
2 Year Of Member
#3
OP
Posted: 05-09-2016, 03:36 PM
(05-09-2016, 03:26 PM)Nue Bhandell Wrote: jejak :D
nice share bang,, nanti pagi coba ah xixihi

ente main ctf juga yaa ?
maen bareng :D
root@localhost:~# cat something.txt
Dompu Linuxer
I'm Nothing Without Allah
Reply
Find Posts
Security Analyze
Super Moderators
Posts:
35
Joined:
Mar 2016
Likes:
1
Reputation:
0
2 Year Of Member
#4
Posted: 05-11-2016, 02:48 AM
duhh.. blm dpet teorinya nih gw bro....
Zero-Security.id | BackBox Jakarta Team
Reply
Find Posts
From Nothing To Be Something
Moderators
Posts:
49
Joined:
Mar 2016
Likes:
0
Reputation:
0
2 Year Of Member
#5
OP
Posted: 05-11-2016, 10:37 AM
(05-11-2016, 02:48 AM)kcnewbie Wrote: duhh.. blm dpet teorinya nih gw bro....
teori belakangan :v
yang penting ngerti dulu cara hitung hex nyaa :v
root@localhost:~# cat something.txt
Dompu Linuxer
I'm Nothing Without Allah
Reply
Find Posts
Junior Member
Posts:
1
Joined:
May 2016
Likes:
0
Reputation:
0
2 Year Of Member
#6
Posted: 05-21-2016, 01:06 AM
Permisi. Mau tanya gan, itu posisi hexadecimal yang dirubah selalu sama atau berubah rubah ya ?
Reply
Find Posts
From Nothing To Be Something
Moderators
Posts:
49
Joined:
Mar 2016
Likes:
0
Reputation:
0
2 Year Of Member
#7
OP
Posted: 05-22-2016, 12:22 AM
(05-21-2016, 01:06 AM)ravidhr Wrote: Permisi. Mau tanya gan, itu posisi hexadecimal yang dirubah selalu sama atau berubah rubah ya ?
ane juga msh kurang tau itu bang,, tapi yang ane tau kalau size nya 128 bytes posisi hex nya kemungkinan sama
root@localhost:~# cat something.txt
Dompu Linuxer
I'm Nothing Without Allah
Reply
Find Posts
Register an account or login to reply
Create an account
Create a free account today and start posting right away. It only takes a few seconds.
Login
Log into an existing account.
1 Guest(s)