Video: Смотрим на macOS 11 и Mac на ARM-чипе (Desember 2024)
Sebuah bug yang ditemukan di Bash, juru bahasa perintah yang banyak digunakan, menimbulkan risiko keamanan yang kritis terhadap sistem Unix dan Linux, kata para pakar keamanan. Dan jangan sampai Anda tergoda untuk mengabaikan masalah hanya sebagai masalah server, ingat bahwa Mac OS X menggunakan Bash. Banyak ahli memperingatkan itu mungkin lebih buruk daripada Heartbleed.
Kerentanan hadir di sebagian besar versi Bash, dari versi 1.13 hingga 4.3, menurut Stephane Chazelas, jaringan Unix dan Linux dan administrator telekomunikasi di Akamai, yang pertama kali mengungkapkan bug tersebut. Computer Emergency Response Team (CERT) di Departemen Keamanan Dalam Negeri memperingatkan dalam peringatan bahwa jika dieksploitasi, kerentanan dapat memungkinkan peretas jarak jauh untuk mengeksekusi kode berbahaya pada sistem yang terpengaruh. Basis data kerentanan NIST telah memberi peringkat bug 10 dari 10 dalam hal tingkat keparahan.
"Kerentanan ini berpotensi menjadi masalah yang sangat besar, " kata Tod Beardsley, manajer teknik di Rapid7.
Kerentanan berkaitan dengan bagaimana Bash menangani variabel lingkungan. Saat menetapkan fungsi ke variabel, kode tambahan apa pun dalam definisi juga akan dieksekusi. Jadi yang harus dilakukan penyerang adalah entah bagaimana menambahkan banyak perintah dalam definisi itu - serangan kode-injeksi klasik - dan mereka akan dapat membajak dari jarak jauh mesin yang terkena dampak. Chazelas dan peneliti lain yang telah melihat kelemahannya telah mengkonfirmasi bahwa itu mudah dieksploitasi jika kode tersebut disuntikkan ke dalam variabel lingkungan, seperti fitur ForceCommand di OpenSSH sshd, modul mod_cgi dan mod_cgid di Apache HTTP Server, atau skrip yang mengatur lingkungan untuk klien DHCP.
"Sejumlah besar program di Linux dan sistem UNIX lainnya menggunakan Bash untuk mengatur variabel lingkungan yang kemudian digunakan saat menjalankan program lain, " Jim Reavis, kepala eksekutif Cloud Security Alliance, menulis dalam sebuah posting blog.
Perbandingan Heartbleed Tak Terelakkan
Pertimbangkan dua hal tentang kerentanan ini: Server Linux / Unix banyak digunakan di pusat data di seluruh dunia dan juga tertanam di banyak perangkat; kerentanan telah ada selama bertahun-tahun. Karena Bash begitu luas, perbandingan dengan Heartbleed, kerentanan di OpenSSH yang ditemukan kembali pada bulan April tidak bisa dihindari. Robert Graham dari Errata Security telah menjuluki cacat ShellShock.
Tapi apakah itu Heartbleed 2? Agak sulit diceritakan. Ini jelas merupakan masalah serius, karena memberikan penyerang akses ke shell perintah, yang merupakan tiket emas untuk dapat melakukan apa pun yang mereka inginkan pada mesin itu.
Mari kita pikirkan dalam hal ukuran. Server Web Apache memberi daya besar bagi sebagian besar Situs Web di dunia. Seperti yang kami pelajari selama Heartbleed, ada banyak mesin non-Linux / Unix yang menggunakan OpenSSH dan Telnet. Dan DHCP sangat berperan dalam memudahkan kita untuk naik dan turun jaringan. Ini berarti bahwa selain komputer dan server, ada kemungkinan bahwa sistem tertanam lainnya, seperti router, juga rentan terhadap pembajakan. Graham dari Errata Security - yang telah melakukan beberapa analisis bug yang paling menyeluruh sejauh ini - melakukan beberapa pemindaian dan dengan mudah menemukan beberapa ribu server yang rentan, tetapi agak sulit pada saat ini untuk memperkirakan besarnya masalah.
Namun, cacat Heartbleed hadir hanya dengan menginstal versi OpenSSL yang rentan. Bug ini tidak semudah itu.
"Ini tidak sesederhana seperti 'menjalankan Bash, '" kata Beardsley. Agar mesin rentan terhadap serangan, perlu ada aplikasi (seperti Apache) mengambil input pengguna (seperti header User-Agent) dan memasukkannya ke dalam variabel lingkungan (yang dilakukan skrip CGI), katanya. Kerangka kerja Web modern umumnya tidak akan terpengaruh, katanya.
Ini mungkin sebabnya Graham berkata sementara ShellShock sama parahnya dengan Heartbleed, "tidak perlu terburu-buru dan memperbaiki bug ini. Server utama Anda mungkin tidak rentan terhadap bug ini."
Tetapi sebelum kita panik tentang router dan perangkat yang disematkan (dan Internet of Things), perlu diingat bahwa tidak semua sistem menggunakan Bash. Ubuntu dan sistem lain yang diturunkan dari Debian dapat menggunakan juru bahasa perintah yang berbeda yang disebut Dash. Perangkat tertanam sering menggunakan satu yang disebut BusyBox, yang tidak rentan, Roel Schouwenberg, seorang peneliti senior di Kaspersky Lab, mengatakan di Twitter.
Rentan atau Tidak?
Anda dapat memeriksa apakah Anda rentan dengan menjalankan perintah berikut (kode yang disediakan oleh CSA). Buka jendela terminal dan masukkan perintah berikut di $ prompt:
env x = '() {:;}; echo rentan 'bash -c "echo this is a test"
Jika Anda rentan itu akan dicetak:
rentan
ini adalah sebuah ujian
Jika Anda memperbarui Bash, Anda hanya akan melihat:
ini adalah sebuah ujian
Biasanya, saya akan mengatakan langsung dan tambal segera, tetapi ternyata tambalan yang tersedia tidak lengkap. Masih ada cara untuk menyuntikkan perintah melalui variabel lingkungan bahkan setelah menambal Bash, Red Hat mengatakan pagi ini. Jika Anda hanya memiliki sedikit mesin, mungkin ada baiknya meneruskan dan menerapkan tambalan yang tersedia, tetapi jika Anda memiliki ribuan mesin untuk ditambal, mungkin ada baiknya menunggu beberapa jam lagi. Semua distribusi Linux hulu (dan semoga Apple!) Sedang memperbaiki sekarang.
"Ingat, bahkan jika Anda belum pernah mendengar tentang Bash sebelumnya, atau tidak menjalankannya, Anda mungkin memiliki perangkat lunak yang berjalan di komputer Anda yang memunculkan proses Bash, " kata konsultan keamanan independen Graham Cluley.