Celah Berbahaya Pada Linux (GHOST) | Let's Hunt The GHOST





PENEMUAN
Selasa yang lalu (27/01/15) riset keamanan dari Qualys, Redwood Shores-California mengumumkan tentang apa yang mereka temukan terkait dengan celah keamanan pada GNU C library. Celah tersebut selanjutnya disebut sebagai GHOST (a.k.a. CVE-2015-0235). Merupakan jenis buffer overflow pada fungsi  __nss_hostname_digits_dots().

SAMA SEPERTI HEARTBLEED DAN SHELLSHOCK
Celah ini merupakan ancaman terbesar dalam internet seperti halnya Heartbleed, Shellshocks dan Poodle yang berhasil terungkap tahun lalu. Celah ini sangatlah berbahaya, mengingat GHOST dapat digunakan untuk mendapatkan akses penuh terhadap server Linux secara diam-diam.

KENAPA GHOST?
Celah yang ada pada GNU C Library (glibc) disebut sebagai GHOST lantaran celah itu dapat diakses melalu fungsi-fungsi dari gethostbyname. Glibc merupakan repository dari perangkat lunak opensource yang ditulis dengan bahasa C dan C++ untuk mendefinisikan system call.

Masalah sebernarnya berasal dari buffer overflow yang ada pada fungsi  __nss_hostname_digits_dots(). Fungsi ini dipanggil oleh  _gethostbyname dan gethostbyname2().

Penelitian mengatakan, remote attacker dapat memanggil salah satu fungsi tersebut dalam upaya menjalankan arbitrary remote code dengan permissions user yang pada saat itu menjalankan aplikasi yang bersangkutan.

Berdasarkan Qualys, ada sejumlah faktor untuk menjalankan exploit ini. Yang pertama, agar celah dapat di eksploitasi sepenuhnya, aplikasi harus menerima variabel hostname sebagai inputan kemudian membacanya menggunakan fungsi gethostbyname. Selain itu, ada beberapa batasan yang bisa digunakan sebagai hostname. Karakter pada hostname haruslah digit (angka) dan karakter terakhir tidak boleh titik (.) . Bisa jadi seluruh hostname terdiri dari angka dan titik.

EXPLOIT CODE
Untuk Proof of Concept (PoC), pihak Qualys telah mencobanya pada  Exim mail server mengunakan remote exploit, sehingga mereka dapat membypass semua perlindungan server (seperti ASLR, PIE and NX) baik pada sistem 32bit ataupun 64bit. Amol Sarwate, selaku pimpinan dari Qualys mengatakan, attacker dapat membuat sebuah email yang dapat menggunakan celah tersebut, bahkan tanpa membuka email sekalipun. Sejauh ini, pihak Qualys belum mempublikasikan exploit itu. Namun mereka berniat untuk menambahkan code exploit pada modul Metasploit.

CARA MENGETAHUINYA
Lakukan cara berikut untuk mengetahui, apakah server mempunyai celah atau tidak:

#wget -O GHOST.c https://gist.githubusercontent.com/koelling/ef9b2b9d0be6d6dbab63/raw/de1730049198c64eaf8f8ab015a3c8b23b63fd34/gistfile1.c

compile skrip dengan gcc:
gcc -o ghost GHOST.c

Selanjutnya, jalankan skrip.
#./ghost


Output dari komputer jika tidak terdapat celah GHOST:

Output dari komputer yang tidak terdapat GHOST

JIKA KOMPUTER VULNERABLE
Cara terbaik untuk melihat versi glibc adalah dengan sintaks berikut:
#ldd --version

cek versi glibc

Daftar dari beberapa distro linux yang mungkin mempunyai celah:
  • RHEL (Red Hat Enterprise Linux) version 5.x, 6.x and 7.x
  • CentOS Linux version 5.x, 6.x & 7.x
  • Ubuntu Linux version 10.04, 12.04 LTS
  • Debian Linux version 7.x
  • Linux Mint version 13.0
  • Fedora Linux version 19 or older
  • SUSE Linux Enterprise 11 and older (also OpenSuse Linux 11 or older versions).
  • SUSE Linux Enterprise Software Development Kit 11 SP3
  • SUSE Linux Enterprise Server 11 SP3 for VMware
  • SUSE Linux Enterprise Server 11 SP3
  • SUSE Linux Enterprise Server 11 SP2 LTSS
  • SUSE Linux Enterprise Server 11 SP1 LTSS
  • SUSE Linux Enterprise Server 10 SP4 LTSS
  • SUSE Linux Enterprise Desktop 11 SP3
  • Arch Linux glibc version <= 2.18-1

Untuk memperbaiki celah pada Kali Linux (basis Debian) yaitu dengan melakukan update dan upgrade secara rutin (dist-upgrade jika ingin melakukan upgrade kernel juga). Untuk panduan upgrade agar tidak terjadi crash kunjungi link BERIKUT


Proses pengenalan dan perbaikan glibc

Jangan lupa untuk melakukan reboot setelah melakukan langkah diatas.

Semoga artikel ini membantu.

Source:
http://thehackernews.com/2015/01/ghost-linux-security-vulnerability27.html
http://www.cyberciti.biz/faq/cve-2015-0235-patch-ghost-on-debian-ubuntu-fedora-centos-rhel-linux/
http://www.cyberciti.biz/faq/cve-2015-0235-ghost-glibc-buffer-overflow-linux-test-program/
http://blogs.cisco.com/security/talos/ghost-glibc

Mencari Selisih Jumlah Hari Antara Dua Tanggal pada Bash Scripting

Beberapa waktu lalu lagi bikin projek yang melibatkan protokol HTTPS. Seperti yang kita tahu bahwa HTTPS merupakan protokol yang melindungi ...