Posted by kecoak on Dec 31, 2008

Rogue-CA with MD5

Well, berikut ini rincian (hampir?) lengkap mengenai presentasi team alexander sotirov yang menjadi sorotan komunitas security akibat judulnya di event CCC kemarin, “Making the theoretical possible. Attacking a critical piece of Internet infrastructure.”. In fact, judul yang sebenarnya lebih relevan adalah “MD5 considered harmful today: creating a rogue CA certificate” .

Di milis DailyDave sehari sebelumnya beberapa orang memprediksi apa kira-kira isi presentasi tersebut, dan sebagian besar berpendapat vulnerable pada routing protocol. Sebenarnya saya pribadi cukup kecewa karena inti dari permasalahan yang akan dibahas tidak seperti yang dibayangkan sebelumnya, bukan bermaksud meremehkan hole MD5 ini, namun efek yang dihasilkan tidaklah se-efektif hole sebelum-sebelumnya seperti bailiwicked dns (yang menyerang standard protocol). Effort yang dibutuhkan oleh hole ini juga sangat besar, tidak se-efisien serangan terhadap bailiwicked. Dan infrastruktur yang diserang pun membutuhkan bantuan dari vulnerable yang lain (seperti untuk me-redirect request user).

MD5 collision muncul sekitar tahun 2004, dan cukup mencengangkan karena kita bisa membuat dua binary yang menghasilkan fungsi berbeda namun memiliki MD5 signature yang persis sama. Apa yang dilakukan oleh team Alexander Sotirov adalah mengimplementasikan jenis serangan ini terhadap CA (Certificate Authority) dimana CA tersebut mendistribusikan signature menggunakan MD5, jenis serangan memanfaatkan algoritma yang merupakan implementasi analisis dari bidang akademis dengan security researcher dan memanfaatkan kemampuan cluster hardware (PS3) sebagai alat perhitungan matematis. Memang secara praktikal serangan ini tidak dapat dilakukan begitu saja oleh sembarang orang karena resource-resource yang dibutuhkan sangat besar (walaupun kita bisa menghasilkan algoritam yang lebih efisien, tetap saja membutuhkan resource hardware yang besar), namun informasi ini tetap penting karena:

  • Aplikasi yang memanfaatkan MD5 masih cukup banyak, dan apabila suatu pihak memang berniat menyerang suatu target penting (mis: aplikasi gov) dan ada salah satu aplikasi mereka yang menggunakan MD5 maka metode ini dapat digunakan.
  • Resource bukanlah masalah bagi perusahaan, government, organisasi kriminal, underground dan para botnetnya, dsb. Sehingga serangan ini tetap memungkinkan bagi pihak-pihak yang serius ingin mendapatkan akses ke suatu sektor penting dan uang bukan masalah bagi mereka.
  • Public disclosure suatu metode tidak dapat dianggap remeh begitu saja, karena public disclosure mengakibatkan riset tersebut menjadi informasi dasar bagi seluruh orang di dunia. Dan efeknya adalah beragam hacker, researcher, akademia akan mencoba cara-cara unik lainnya sehingga bisa jadi di saat-saat mendatang akan didapatkan collision MD5 tanpa menggunakan komputasi super-power, namun dengan beberap ‘highly developed trick” tersendiri (terutama untuk menangani kesulitan birthday attack).
  • Google berhasil membuat komputasi sulit dengan memanfaatkan cluster PC biasa yang telah dimodifikasi, bukan tidak mungkin dengan berbagai hardware hacking bisa didapatkan kemampuan yang sama dalam hal komputasi. Dan sesuai dengan perkembangan jaman dimana kemampuan hardware semakin berkembang, tahun 2008 sistem cluster dari game console bisa menyamai kemampuan super-power komputer. Tahun-tahun mendatang kreativitas hardware ini akan semakin berkembang lebih baik lagi dan pembuatan algoritma juga akan ikut berkembang.

Saya sendiri setuju dengan pendapat Thomas Ptacek dari Matasano mengenai serangan ini (taken from dailydave mailing list):

* The research team had access not only to a cluster of PS3s but to a
specially optimized MD5 collision-finding implementation, which they
had because Lenstra’s team has been playing with a PS3 cluster for
awhile.

* The research team had access to a currently-unpublished optimization
to (presumably the birthday-bits search part of) the collision-finding
algorithm,

* The attack could be made impractical by randomizing the serial
numbers for all future certs issued by RapidSSL (and, presumably, by
banning MD5).

Saya tetap berpendapat Bailiwicked DNS adalah bugs (public-disclosure) paling asyik tahun 2008 ini karena sifatnya yang simple namum benar-benar mempengaruhi infrastruktur internet dan masyarakat secara luas, sementara Pho3n1x tetap berpendapat bahwa SNMP V3 Authentication Vulnerability merupakan bugs terpilih tahun ini. So, gimana dengan kalian?! 🙂

Post a Comment

One Response to “Rogue-CA with MD5”

  1. gentoo says:

    tapi kan snmp v3 itu by default ga nyala, jadi untuk di indo mungkin gak bakal banyak yang kena, soalnya kan indo seneng yang default-default, soal DNS mungkin gw setuju, tapi buat exploitasinya relatif ga gampang (kecuali numpang dns org), bagi gw sih yang terkeren MS08_068, soalnya sukses mengangkat kejayaan ms kayak jaman dcom, lsass, dan flaw dns di 2007.. heheheh, hidup MS ** gubrak**

Leave a Reply

Your email address will not be published. Required fields are marked *