Penjelasan Heartbleed

Emang agak telat bnaget sih posting tentang heartbleed , tapi bagi yang masih belumtahu apa itu heartbleed? dan bagaimana mengatasinya berikut rangkuman artikel dari berbagai sumber yang saya buat

Heartbleed Bug
Tanggal 7 April 2014, diumumkan bahwa versi OpenSSL 1.01 sampai versi 1.0.1f terdapat bug kritis saat implementasi ekstensi Heartbeat dari TLS. Bug ini dikenal dengan nama Bug Heartbleed. Dan referensi resmi terhadap ini adalah CVE-2014-0160. Namun penting untuk dicatat bahwa OpenSSL versi 1.0.1g, 1.0.0, dan 0.9.8 tidak terpengaruh dengan bug heartbleed.

Pengertian HeartBleed

Sebelumnya perlu diketahui heartbleed bukanlah virus. Heartbleed adalah celah keamanan pada salah satu ekstensi OpenSSl yang disebut heartbeat. Celah keamanan memumngkinkan attacker(hacker/cracker) untuk membaca memori dari server yang diproteksi oleh OpenSSL. Deangan celah keamanan tersebut para attacker dapat mencuri data penting yang disimpan deserver seperti password, username, dan informasi penting lainnya.
SSL adalah standar keamanan yang akan mengenkripsi teks (seperti username dan password) yang user kirim via browser.
OpenSSL adalah salah satu teknik SSL tersebut. Dinamakan “open” karena memang bersifat open source.
Heartbeat adalah salah satu fitur OpenSSL yang diperkenalkan tahun 2012. Tujuan heartbeat adalah mengecek apakah komputer user masih terhubung ke sebuah server.

Bagaimana Heartbeat dapat menjadi celah

Seperti yang sebelumnya disebutkan heartbeat adalah salah satu  fitur OpenSSL yang berfungsi mengecek apakah computer user masih terhungung ke server atau tidak.Heartbeat ini berfungsi seperti saat router yang menjadi perantara antara komputer user dengan server di internet memutuskan hubungan jika terjadi idle yang terlalu lama. Dengan heartbeat, komputer user bisa mengetahui apakah masih terhubung dengan server yang dituju.
Prinsip kerjanya kurang lebih seperti ini, komputer user akan mengirimkan pesan berisi sebuah magic word dan jumlah karakter kata tersebut. Nanti server akan membalas pesan tersebut dengan menyebutkan magic word tersebut.
Fasilitas heartbeat tersebut memiliki kelemahan karena terlalu percaya dengan komputer pengirim. komputer attacker cuma mengirimkan sebuah kata yang pendek (seperti melati) namun meminta respon sebanyak 100 karakter. Server ternyata tidak mengecek kalau melati hanya memiliki 6 karakter. Server langsung “memuntahkan” semua karakter yang tersimpan di memori RAM-nya untuk memenuhi permintaan 100 karakter tersebut.
Dan 100 karakter hanyalah ilustrasi. Sang attacker bisa meminta sampai 64.000 karakter.
Awal kemunculan dan Penyebaran heartbleed
Neel Mehta adalah orang yang menemukan pertama kali heartbleed ,dia salah satu anggota Google Security. Atas jasanya tersebut, dia mendapatkan uang sebesar US$ 15 ribu dari Internet Bug Bounty. Namun oleh Neel, uang itu langsung disumbangkan kepada yayasan The Freedom of Press Foundation yang bergerak di bidang keamanan komunikasi digital.
Seperti yang dijelaskan pada pengertian heartbleed merupakan bug pada ekstensi Heartbeat, maka heartbleed akan muncul ketika heartbeat diimplementasikan di OpenSSL. Ekstensi Heartbeat dibuat oleh Dr. Robin Seggelmann pada tahun 2011. Ekstensi ini kemudian direview oleh Dr. Stephen N. Henson (salah satu dari empat core developer OpenSSL) yang ternyata gagal menyadari adanya bug di ekstensi tersebut. Heartbeat pun akhirnya dijadikan sebagai ekstensi OpenSSL yang aktif secara default dan mulai diadopsi oleh banyak pengelola website sejak dirilisnya OpenSSL versi 1.0.1 pada 14 Maret 2012.
Setidaknya 2/3 website di dunia menggunakan proteksi OpenSSL, sehingga sebanyak itu pula penyebarannya. Website besar seperti Google, Gmail, Facebook, Dropbox, Yahoo, Flickr, Instagram, Pinterest, dan berbagai website populer terkena heartbleed.

Cara mengetahui website yang terkena Heartbleed
Dari sisi pengguna
User dapat mengetahui website yang terkena heartbleed, menggunakan Heartbleed Test dari Filippo ataupun dari McAfee. Dengan cara memasukkan URL website yang dicurigai. jika hasilnya vulnerable maka website tersebut masih belum kebal terhadap Heartbleed. user juga bisa menggunakan addon browser untuk semakin memudahkan melihat apakah website yang user kunjungi sudah kebal terhadap Heartbleed atau belum.
Dari sisi pengelola website
Untuk para pengelola website dapat melakukan pengecekkan versi OpenSSL di server yang gunakan. Jika versi OpenSSL di server  adalah 1.0.1 hingga 1.0.1f, maka server tersebut belum kebal terhadap Heartbleed.

Cara mengatasi heartbleed
Bagi pengguna
Bagi pengguna setelah mengecek bahwa website tersebut terkena heartbleed, dapat menghubungi pengelola website tersebut. User dapat menanyakan kapan akan ditutup bug tersebut. Atau jika pengelola tersebut belum mengetahuinya , user dapat mengingatkan agar pengelola segera menambal bug tersebut.
Ada baiknya gunakan password yang berbeda disetiap website yang tidak kebal pada heartbleed , hal ini mengurangi resiko kehilangan data yang lebih besar.
Untuk semakin mengamankan akun , ada baiknya Two-Factor Authentication jika memang fitur tersebut tersedia. Saat ini berbagai situs besar dan populer sudah menerapkan teknologi ini. Dengan begini attacker tidak akan bisa bebas keluar masuk ke akun kamu meskipun dia sudah mengantongi username dan passwordnya.

Bagi Pengelola Situs
Langkah-langkah penanganan Heartbleed untuk SSL Certificates dari Symantec, RapidSSL, dan Thawte:
Langkah ke 1: Untuk menentukan apakah Anda termasuk yang rentan terkena bug Heartbleed, masukkan nama domain Anda pada https://www.ssllabs.com/ssltest/index.html. Apabila website Anda hasilnya bersih seperti gambar dibawah ini, maka Anda tidak memerlukan tindakan apapun. 
Namun, jika website Anda ditemukan rentan terkena bug Heartbleed, Anda harus segera melakukan langkah ke 2 di bawah ini.
Langkah ke 2: Install update versi terbaru dari OpenSSL pada Server Anda. Anda dapat menemukan versi ini disini: https://rhn.redhat.com/errata/RHSA-2014-0376.html. Anda juga dapat mengetahui saran keamanan untuk OpenSSL dari URL berikut: https://www.openssl.org/news/secadv_20140407.txt.
Langkah ke 3: Buat Certificate Signing Request (CSR) dan Private Key terbaru dari OpenSSL Anda. File CSR yang baru kemudian digunakan untuk menerbitkan ulang Sertifikat SSL Anda (Reissue the certificate) sekaligus Anda gunakan dengan Private Key yang baru untuk diinstall ulang setelah Sertifikat SSL selesai diterbitkan ulang.
Langkah ke 4: Login ke http://www.warungssl.com/logon dan klik di menu "List Orders".
Langkah ke 5: Cari Sertifikat SSL Anda yang akan di-reissue pada daftar tabel dan klik pada No. "Vendor OrderID" pada Sertifikat SSL yang berstatus Active.
Langkah ke 6: Kemudian scroll ke halaman bawah, dan klik pada tombol "Re-issue Certificate".
Langkah ke 7: Kemudian paste hasil CSR baru yang telah dibuat dari versi OpenSSL terbaru, kemudian lengkapi kembali informasi detail yang dibutuhkan, dan klik pada tombol "Submit".
Langkah ke 8: Setelah disubmit, Otoritas Sertifikat Anda akan meminta Anda untuk memverifikasi kepemilikan domain Anda kembali.
Langkah ke 9: Setelah proses verifikasi tentang kepemilikan domain Anda selesai, Sertifikat SSL telah diterbitkan kembali dan Anda dapat melanjutkan untuk menginstall kembali Sertifikat SSL Anda yang telah diterbitkan ulang.
Langkah ke 10: Setelah langkah ke 9 selesai, Anda sudah dapat memenuhi langkah pengamanan dengan baik. Namun, harap dicatat bahwa sertifikat SSL anda yang lama secara otomatis akan dicabut oleh Otoritas Sertifikat dalam waktu 12 jam setelah Anda melakukan reissue Sertifikat SSL. Namun, apabila Anda tidak ingin menunggu 12 jam, Anda dapat menghubungi langsung Otoritas Sertifikat dengan menginformasikan bahwa Sertifikat SSL yang baru setelah direissue telah diinstall pada Server Anda, dan meminta Otoritas Sertifikat untuk mencabut Sertifikat SSL yang lama secara manual (SSL Revocation).



Langkah penanganan Heartbleed untuk SSL Certificates dari GeoTrust dan Comodo:
Langkah ke 1: Untuk menentukan apakah Anda termasuk yang rentan terkena bug Heartbleed, masukkan nama domain Anda pada https://www.ssllabs.com/ssltest/index.html. Apabila website Anda hasilnya bersih seperti gambar dibawah ini, maka Anda tidak memerlukan tindakan apapun. Namun, jika website Anda ditemukan rentan terkena bug Heartbleed, Anda harus segera melakukan langkah ke 2 dibawah ini.
Langkah ke 2: Install update versi terbaru dari OpenSSL pada Server Anda. Anda dapat menemukan versi ini disini: https://rhn.redhat.com/errata/RHSA-2014-0376.html. Anda juga dapat mengetahui saran keamanan untuk OpenSSL dari URL berikut: https://www.openssl.org/news/secadv_20140407.txt.
Langkah ke 3: Buat Certificate Signing Request (CSR) dan Private Key terbaru dari OpenSSL Anda. File CSR yang baru kemudian digunakan untuk menerbitkan ulang Sertifikat SSL Anda (Reissue the certificate) sekaligus Anda gunakan dengan Private Key yang baru untuk diinstall ulang setelah Sertifikat SSL selesai diterbitkan ulang.
Langkah ke 4: Periksa nomor seri Sertifikat Anda dan simpan kedalam file notepad pada Desktop Anda. Anda akan membutuhkan informasi ini secara manual pada saat mencabut Sertifikat SSL lama Anda yang berdapampak rawan keamanan Heartbleed. Anda dapat mengetahui informasi nomor serial ini dengan mengklik pada ikon gembok disamping URL Anda pada saat mengakses melalui browser. Silahkan melihat seperti gambar di bawah ini:
Langkah ke 5: Login ke http://www.warungssl.com/logon dan klik di menu "List Orders".
Langkah ke 6: Cari Sertifikat SSL Anda yang akan di-reissue pada daftar tabel dan klik pada No. "Vendor OrderID" pada Sertifikat SSL yang berstatus Active.
Langkah ke 7: Kemudian scroll ke halaman bawah, dan klik pada tombol "Re-issue Certificate".
Langkah ke 8: Kemudian paste hasil CSR baru yang telah dibuat dari versi OpenSSL terbaru, kemudian lengkapi kembali informasi detail yang dibutuhkan, dan klik pada tombol "Submit".
Langkah ke 9: Setelah disubmit, Otoritas Sertifikat Anda akan meminta Anda untuk memverifikasi kepemilikan domain Anda kembali.
Langkah ke 10: Setelah proses verifikasi tentang kepemilikan domain Anda selesai, Sertifikat SSL yang telah diterbitkan ulang dapat Anda lanjutkan untuk diinstall kembali pada server Anda.
Langkah ke 11: Setelah proses instalasi SSL Anda selesai, selanjutnya lakukan proses pencabutan Sertifikat SSL (Revoke SSL) yang lama secara manual dengan cara melakukan klik pada tombol Revocation di bawah ini.
Langkah ke 12: Setelah tombol Revocation diklik, Anda akan dialihkan ke websitehttps://www.centralapi.com/heartbleed.aspx, dimana kami akan menanyakan informasi username dan password Anda, beserta dengan Nomor pemesanan (Order Number) Anda serta Nomor Seri dari Sertifikat SSL yang telah Anda dapatkan seperti langkah No. 4 untuk mencabut Sertifikat SSL yang lama.

Seberapa serius situasi ini
Secara teori, OpenSSL bekerja dengan baik. Namun terdapat kesalahan kecil pada kode sumber seperti Heartbleed. Dan Akibatnya telah membuat pustaka perangkat lunak dan versi populer berakit lemah keamanan. Hampir semua versi pada OpenSSL yang terkena mampu memberikan akses pribadi pada website yang seharusnya menjadi aman karena kode TLS/SSL.
Dalam situasi ini, para penyerang secara teori bisa melihat isi dari kode rahasia (secret handshake) pada saat sesi SSL terjalin ketika pengguna melakukan login ke account mereka seperti saat login pada email account. Username dan password, bahkan hingga informasi nomor Kartu Kredit sangat mungkin beresiko, dan tergantung pada layanan apa yang sedang diakses oleh pengguna meskipun belum ada cara untuk mengetahui hal ini dengan pasti. Penyerang dapat mengidentifikasi dirinya di Internet. Setelah setengah proses jabat tangan (SSL handshake) terganggu melalui cara ini, penyerang dapat menggunakan private key baru mereka untuk melakukan serangan yang disebut dengan serangan "Man-in-the-middle".


Bagikan :





Artikel Terkait

1 Response to "Penjelasan Heartbleed"