Baru saja ditemukan celah keamanan di Bash, shell Unix yang populer. Celah keamanan ini dinamakan Shellshock atau CVE-2014-6271 – remote code execution through Bash. Selain itu ada juga yang menamakan celah keamanan ini bashdoor. Celah keamanan ini memungkinkan penyerang menggunakan bash untuk menjalankan kode tertentu (arbitrary command) secara remote. Penyerang kemudian dapat mengambil alih sistem. Celah keamanan ini ditemukan oleh Stephane Chazelas pada 12 September 2014. Nah, karena sangat banyak web server yang menggunakan bash, maka celah keamanan ini menjadi sangat berbahaya. Akibat dari celah keamanan ini diduga lebih berbahaya dibandingkan celah keamanan Heartbleed. Diduga celah keamanan ini telah terdapat pada Bash versi 1.13 yang telah ada sejak tahun 1992.
Contoh eksploitasi celah keamanan ini adalah dengan memasukan environment variable yang terdiri dari sebuah fungsi yang diikuti dengan arbitrary command. Misalnya dengan menjalankan perintah berikut pada terminal:
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash secara tidak terduga akan menampilkan kata “vulnerable”. Atau dengan menjalankan perintah berikut:
env X='() { (a)=>\' sh -c "echo date"; cat echo
bash akan menampilkan kata “date“. Pada contoh diatas, bash hanya akan menampilkan text yang tidak berbahaya, tapi celah keamanan ini bisa dimanfaatkan untuk menjalankan command lainnya yang berbahaya. Contohnya bisa melakukan DOS attack, menjalankan fungsi Command dan Control seperti pada jaringan Botnet, bahkan Kaspersky menemukan malware yang memanfaatkan celah keamanan ini (Bashlite). Beberapa contoh serangan lainnya yang menggunakan serangan ini adalah serangan pada web server yang menggunakan CGI (Common Gateway Interface), pada layanan SSH dan DHCP.
Untuk menguji apakah server atau komputer kita masih memiliki celah keamanan ini bisa dilakukan dengan memasukan command pada contoh diatas pada shell, bila bash menampilkan kata “vurnerable” atau “date” berarti komputer kita masih rawan. Bila web server anda menggunakan CGI, ada layanan yang sudah menyediakan alat uji untuk mengetahui apakah web kita masih rawan terhadap shellshock ini. Contohnya web http://shellshock.brandonpotter.com/ web berikut http://bashsmash.ccsir.org/ atau disini http://www.shellshocktest.com/
Untuk melakukan patch pada sistem debian/ ubuntu bisa menjalankan perintah berikut pada terminal:
sudo apt-get update && sudo apt-get install --only-upgrade bash
Pada CentOS / RedHat maupun Fedora bisa menjalankan perintah berikut:
sudo yum update bash
Setelah melakukan update jangan lupa lakukan kembali pengujian dengan menuliskan command pada contoh diatas.
Beberapa bahan bacaan tentang celah keamanan ini :
http://seclists.org/oss-sec/2014/q3/650
http://en.wikipedia.org/wiki/Shellshock_%28software_bug%29
http://thehackernews.com/2014/09/bash-shell-vulnerability-shellshock.html
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6271