Minggu, 28 September 2014

Shellshock, Bug yang Lebih Berbahaya Daripada Heartbleed




Bagi para admin sistem yang tugasnya merawat server, tentunya ini menjadi minggu yang sangat sibuk. Sebuah bug yang baru ditemukan telas dipublikasin dan diperkirakan semua server yang menggunakan "Bash", rentan terhadap peretasan. Bash merupakan sebuah interpreter yang banyak digunakan OS distro Linux untuk mengatur hampir semua sumber daya yang ada di komputer tersebut. Bug tersebut membuat para peretas bisa mengeksekusi kode Bash dari jauh dan tanpa otentikasi. Kenapa lebih berbahaya dari heartbleed? Karena jumlah komputer yang menggunakan Bash sangatlah lebih banyak dan bug ini memberikan akses yang lebih besar pada peretas daripada Heartbleed.

Tentunya pertanyaan terbesar, bagaimana caranya mengakses server yang kita sendiri tidak punya informasi untuk masuk ke sana. Jadi, bug ini memanfaatkan perintah  ForceCommand yang terdapat di Web server Apache yang dapat digunakan untuk menjalankan perintah di sebuah server melalui skrip CGI. Nah, contohnya adalah header HTTP request berikut.

http-header = Cookie:() { :; }; ping -c 3 209.126.230.74
Bug shellshock adalah kesalahan pada bash yang mengeksekusi string yang ada setelah definisi sebuah fungsi sebagai perintah Bash yang valid. Tentunya, celah ini sangat berbahaya karena jika seorang peretas berhasil mempunyai akses terhadap bash di suatu server, artinya peretas tersebut dapat melakukan apapun terhadap server tersebut. Coba jalankan perintah di bawah untuk mengecek apakah server Anda juga terkena bug Shellshock.

env x='() { :;}; echo rentan' bash -c "ini adalah test"

Jika kode tersebut menghasilkan "rentan" artinya Anda pun ikut terkena bug Shellshock ini. Bisa dilihat "echo rentan" itu merupakan string setelah deklarasi fungsi kosong "() { :;};". Ada beberapa solusi yang dapat digunakan untuk menutup lubang keamanan tersebut. Salah satunya dengan menghilangkan akses skrip CGI untuk melakukan pemanggilan fungsi ke sistem bash. Selain itu, cara yang lebih simpel adalah dengan menginstall Bash yang terbaru dengan perintah berikut di server Linux yang berbasis debian.

apt-get update; apt-get upgrade;
Beberapa tambalan kode yang pertama ternyata gagal menghilangkan bug Shellshock secara penuh. Oleh karena itu, selalu siapkan diri Anda untuk memperbarui Bash Anda dalam beberapa hari atau minggu ke depan secara rutin. Informasi lengkap terkait Shellshock bisa dilihat di sini. Semoga membantu. :)

Tidak ada komentar:

Posting Komentar