"WannaCry" di sistem Linux: Bagaimana Anda melindungi diri sendiri?

73

Menurut artikel rapid7 ada beberapa versi Samba yang rentan memungkinkan eksekusi kode jauh pada sistem Linux:

Sementara ransomworm WannaCry berdampak pada sistem Windows dan mudah diidentifikasi, dengan langkah-langkah perbaikan yang jelas, kerentanan Samba akan berdampak pada sistem Linux dan Unix dan dapat menghadirkan hambatan teknis yang signifikan untuk mendapatkan atau menggunakan remediasi yang tepat.

CVE-2017-7494

Semua versi Samba mulai dari 3.5.0 dan seterusnya rentan terhadap kerentanan eksekusi kode jarak jauh, memungkinkan klien jahat untuk mengunggah pustaka bersama ke bagian yang dapat ditulisi, dan kemudian menyebabkan server memuat dan menjalankannya.

Skenario serangan yang memungkinkan:

Mulai dari dua faktor:

  • Kerentanan Samba belum diperbaiki pada beberapa distribusi Linux.
  • Ada kerentanan eskalasi hak istimewa lokal yang tidak ditambal pada beberapa versi kernel Linux (misalnya, CVE-2017-7308 pada kernel Ubuntu generik 4.8.0-41).

Seorang penyerang dapat mengakses mesin Linux dan meningkatkan hak menggunakan kerentanan eksploitasi lokal untuk mendapatkan akses root dan menginstal ramsomware masa depan yang mungkin, mirip dengan mock up WannaCry ransomware untuk Linux .

Memperbarui

Artikel terbaru "Peringatan! Peretas Mulai Menggunakan" SambaCry Flaw "untuk Meretas Sistem Linux" menunjukkan cara menggunakan cacat Sambacry untuk menginfeksi mesin linux.

Prediksi ini keluar menjadi cukup akurat, karena honeypots yang dibuat oleh tim peneliti dari Kaspersky Lab telah menangkap kampanye malware yang mengeksploitasi kerentanan SambaCry untuk menginfeksi komputer Linux dengan perangkat lunak penambangan cryptocurrency.

Peneliti keamanan lain, Omri Ben Bassat, secara independen menemukan kampanye yang sama dan menamakannya "EternalMiner" .

Menurut para peneliti, sekelompok peretas yang tidak dikenal telah mulai membajak PC Linux hanya seminggu setelah cacat Samba diumumkan kepada publik dan menginstal versi peningkatan "CPUminer," perangkat lunak penambangan cryptocurrency yang menambang mata uang digital "Monero".

Setelah kompromi mesin yang rentan menggunakan kerentanan SambaCry, penyerang mengeksekusi dua payload pada sistem yang ditargetkan:

INAebsGB.so - Shell terbalik yang menyediakan akses jarak jauh ke penyerang.

cblRWuoCc.so - Sebuah pintu belakang yang mencakup utilitas penambangan cryptocurrency - CPUminer.

Laporan TrendLab diposting pada 18 Juli 2017: Pengguna Linux Mendesak untuk Memperbarui sebagai Ancaman Baru Mengeksploitasi SambaCry

Bagaimana cara mengamankan sistem Linux agar tidak diserang?

GAD3R
sumber
22
WannaCry adalah malware Windows. Virus unix dapat ditulis mengeksploitasi masalah yang tidak terkait ini dengan implementasi protokol yang sama, tetapi ini tidak ada hubungannya dengan malware windows. Tautan yang Anda berikan kepada WannaCry untuk Linux ini adalah tipuan, dari membaca sepintas sumbernya seperti output dari beberapa grafis "make your gui sendiri" -software, tanpa program aktual tetapi GUI yang tidak melakukan apa-apa.
Tidak ada yang
2
@ GAD3R menggunakan iPhone saya dengan Google Translate / mode kamera komentar dalam bahasa Cina mengatakan memang sumbernya tidak lengkap. Saya akan menyarankan mengerjakan ulang pertanyaan di sekitar CVE, menghapus tautan github dan bukan tentang ransomware yang masih belum ada; atau jika Anda masih ingin mengatasi gagasan itu, membuatnya eksplisit bahwa tautan github hanyalah tiruan dari gagasan itu
Rui F Ribeiro
8
@ GAD3R Ya, jika seseorang dapat mengakses sistem saya dari jarak jauh dengan hak istimewa tinggi, jauh lebih menyusahkan jika hanya menggunakan utilitas Linux asli untuk mengenkripsi hard drive saya, dan menulis QT GUI seperti itu di tipuan. Semua fitur aktual (yaitu penyebaran) WannaCry tergantung pada eksploitasi Windows. Menyebutkan "WannaCry" adalah klik-umpan, murni dan sederhana.
Tidak ada yang
6
@Tidak Ada Untuk menjadi cukup adil, saya percaya OP dengan itikad baik dan tidak menyadarinya hanya sebagai GUI; kami bukan penduduk asli China untuk membaca komentar dan seperti yang dia katakan sendiri, dia tidak terlalu mahir dalam membaca kode sumber; IMO kesejajaran antara dua kerentanan, memberikan timing juga tepat. Berikan sedikit kelonggaran. Meskipun demikian, implikasi CVE sendiri mengkhawatirkan.
Rui F Ribeiro
3
IMO Saya tidak akan merekomendasikan menutup pertanyaan, jika seseorang memiliki ide yang berbeda, silakan saja. Saya telah mengerjakan ulang teks pertanyaan untuk itu belum lagi ransomware yang belum dibuat. Solusi yang saya sebutkan setidaknya berguna dalam sistem warisan yang masih kami miliki.
Rui F Ribeiro

Jawaban:

102

Kerentanan baru Samba ini sudah disebut "Sambacry", sementara eksploitasi itu sendiri menyebutkan "Eternal Red Samba", diumumkan di twitter (sensasional) sebagai:

Samba bug, metasploit one-liner untuk memicu hanyalah: simple.create_pipe ("/ path / to / target.so")

Versi Samba yang berpotensi terkena dampak adalah dari Samba 3.5.0 hingga 4.5.4 / 4.5.10 / 4.4.14.

Jika instalasi Samba Anda memenuhi konfigurasi yang dijelaskan di bawah ini, perbaikan / peningkatan harus dilakukan secepatnya karena sudah ada exploit , exploit lain dalam python dan modul metasploit di luar sana.

Lebih cukup menarik, sudah ada add-ons untuk honeypot tahu dari Honeynet proyek, Dionaea baik untuk WannaCry dan SambaCry plug-in .

Samba cry tampaknya sudah (ab) digunakan untuk menginstal lebih banyak crypto-miners "EternalMiner" atau menjadi double-dropper sebagai malware dropper di masa depan .

honeypots yang dibuat oleh tim peneliti dari Kaspersky Lab telah menangkap kampanye malware yang mengeksploitasi kerentanan SambaCry untuk menginfeksi komputer Linux dengan perangkat lunak penambangan cryptocurrency. Peneliti keamanan lain, Omri Ben Bassat, secara independen menemukan kampanye yang sama dan menamakannya "EternalMiner."

Solusi yang disarankan untuk sistem dengan Samba diinstal (yang juga ada dalam pemberitahuan CVE) sebelum memperbaruinya, ditambahkan ke smb.conf:

nt pipe support = no

(dan memulai kembali layanan Samba)

Ini seharusnya menonaktifkan pengaturan yang mengaktifkan / menonaktifkan kemampuan untuk membuat koneksi anonim ke windows IPC bernama layanan pipa. Dari man samba:

Opsi global ini digunakan oleh pengembang untuk memungkinkan atau melarang klien Windows NT / 2000 / XP kemampuan untuk membuat koneksi ke pipa khusus SMB IPC $ NT. Sebagai pengguna, Anda tidak perlu menimpa default.

Namun dari pengalaman internal kami, sepertinya perbaikannya tidak kompatibel dengan yang lebih lama? Versi Windows (setidaknya beberapa? Windows 7 klien tampaknya tidak bekerja dengan nt pipe support = no), dan dengan demikian rute perbaikan dapat masuk dalam kasus ekstrim ke menginstal atau bahkan mengkompilasi Samba.

Lebih khusus lagi, perbaikan ini menonaktifkan daftar share dari klien Windows, dan jika diterapkan mereka harus secara manual menentukan path lengkap dari share untuk dapat menggunakannya.

Solusi lain yang diketahui adalah untuk memastikan saham Samba dipasang dengan noexecopsi. Ini akan mencegah eksekusi binari yang berada di sistem file yang di-mount.

Patch kode sumber keamanan resmi ada di sini dari halaman keamanan samba.org .

Debian sudah mendorong kemarin (24/5) pembaruan keluar pintu, dan pemberitahuan keamanan yang sesuai DSA-3860-1 samba

Untuk memverifikasi jika kerentanan diperbaiki di Centos / RHEL / Fedora dan turunan, lakukan:

#rpm -q –changelog samba | grep -i CVE
– resolves: #1450782 – Fix CVE-2017-7494
– resolves: #1405356 – CVE-2016-2125 CVE-2016-2126
– related: #1322687 – Update CVE patchset

Sekarang ada nmapskrip pendeteksi: samba-vuln-cve-2017-7494.nse untuk mendeteksi versi Samba, atau nmapskrip yang jauh lebih baik yang memeriksa apakah layanan tersebut rentan di http://seclists.org/nmap-dev/2017/q2/att-110/samba-vuln-cve -2017-7494.nse , salin ke /usr/share/nmap/scriptslalu perbarui nmapdatabase, atau jalankan sebagai berikut:

nmap --script /path/to/samba-vuln-cve-2017-7494.nse -p 445 <target>

Tentang langkah-langkah jangka panjang untuk melindungi layanan SAMBA: Protokol SMB tidak boleh ditawarkan secara langsung ke Internet pada umumnya.

Tak perlu dikatakan lagi bahwa SMB selalu menjadi protokol yang berbelit-belit, dan bahwa layanan semacam ini harus diblokir dan dibatasi untuk jaringan internal [di mana mereka dilayani].

Ketika akses jarak jauh diperlukan, baik ke rumah atau khusus ke jaringan perusahaan, akses tersebut harus dilakukan dengan lebih baik menggunakan teknologi VPN.

Seperti biasa, pada situasi ini prinsip Unix hanya menginstal dan mengaktifkan layanan minimum yang diperlukan memang terbayar.

Diambil dari exploit itu sendiri:

Eksploitasi Samba Merah Abadi - CVE-2017-7494.
Menyebabkan server Samba rentan memuat pustaka bersama dalam konteks root.
Kredensial tidak diperlukan jika server memiliki akun tamu.
Untuk eksploit jarak jauh Anda harus memiliki izin menulis untuk setidaknya satu share.
Eternal Red akan memindai server Samba untuk mengetahui bagian yang dapat ditulisi. Ini juga akan menentukan jalan penuh dari share jarak jauh.

    For local exploit provide the full path to your shared library to load.  

    Your shared library should look something like this

    extern bool change_to_root_user(void);
    int samba_init_module(void)
    {
        change_to_root_user();
        /* Do what thou wilt */
    }

Juga diketahui bahwa sistem dengan SELinux yang diaktifkan tidak rentan terhadap eksploitasi.

Lihat Celah Samba 7 Tahun Memungkinkan Hacker Mengakses Ribuan PC Linux dari Jarak Jauh

Menurut mesin pencari komputer Shodan, lebih dari 485.000 komputer yang mendukung Samba mengekspos port 445 di Internet, dan menurut para peneliti di Rapid7, lebih dari 104.000 titik akhir yang terpapar internet tampaknya menjalankan versi Samba yang rentan, di mana 92.000 di antaranya adalah menjalankan versi Samba yang tidak didukung.

Karena Samba adalah protokol SMB yang diimplementasikan pada sistem Linux dan UNIX, maka beberapa ahli mengatakan itu adalah "Linux versi EternalBlue," yang digunakan oleh ransomware WannaCry.

... atau haruskah saya mengatakan SambaCry?

Dengan mengingat jumlah sistem yang rentan dan kemudahan mengeksploitasi kerentanan ini, kelemahan Samba dapat dieksploitasi dalam skala besar dengan kemampuan yang dapat ditularkan.

Jaringan rumah dengan perangkat penyimpanan yang terpasang di jaringan (NAS) [yang juga menjalankan Linux] juga bisa rentan terhadap cacat ini.

Lihat juga Bug eksekusi-kode yang bisa ditebak telah bersembunyi di Samba selama 7 tahun. Tempel sekarang!

Cacat tujuh tahun, diindeks sebagai CVE-2017-7494, dapat diandalkan dieksploitasi dengan hanya satu baris kode untuk mengeksekusi kode berbahaya, selama beberapa kondisi terpenuhi. Persyaratan tersebut termasuk komputer yang rentan yang:

(a) membuat port berbagi-pakai file dan printer dapat dijangkau di Internet,
(b) mengonfigurasi file bersama untuk memiliki hak istimewa menulis, dan
(c) menggunakan jalur server yang diketahui atau dapat diduga untuk file-file itu.

Ketika kondisi tersebut terpenuhi, penyerang jarak jauh dapat mengunggah kode apa pun yang mereka pilih dan menyebabkan server menjalankannya, mungkin dengan hak akses root yang tidak dibatasi, tergantung pada platform yang rentan.

Mengingat kemudahan dan keandalan eksploitasi, lubang ini layak dicolokkan sesegera mungkin. Kemungkinan hanya masalah waktu sampai penyerang mulai aktif menargetkannya.

Juga Cepat 7 - Menambal CVE-2017-7494 di Samba: Ini Lingkaran Kehidupan

Dan lebih banyak SambaCry: Sekuel Linux ke WannaCry .

Fakta yang Perlu Diketahui

CVE-2017-7494 memiliki Skor CVSS 7,5 (CVSS: 3.0 / AV: N / AC: H / PR: L / UI: N / S: U / C: H / I: H / A: H) 3.

Lingkup Ancaman

Permintaan shodan.io dari "port: 445! Os: windows" menunjukkan sekitar satu juta host non-Windows yang memiliki tcp / 445 terbuka ke Internet, lebih dari setengahnya ada di Uni Emirat Arab (36%) dan AS (16%). Sementara banyak dari ini mungkin menjalankan versi yang ditambal, memiliki perlindungan SELinux, atau sebaliknya tidak cocok dengan kriteria yang diperlukan untuk menjalankan exploit, permukaan serangan yang mungkin untuk kerentanan ini besar.

PS Perbaikan komit dalam proyek SAMBA github tampaknya komit 02a76d86db0cbe79fcaf1a500630e24d961fa149

Rui F Ribeiro
sumber
2
Sama sama. Saya akan menambahkan bahwa di zona waktu saya, saya bertindak atas pemberitahuan keamanan Debian kemarin sekitar jam 9 pagi
Rui F Ribeiro
6
Tidak seperti Windows, Samba tidak aktif secara default di sebagian besar distro Linux, kan?
raphael
1
@raphael Memang, tetapi jika saya menerima satu sen untuk setiap server saya temukan dengan set lengkap DVD inti diinstal ... Saya telah mengedit sedikit jawaban untuk mengatasi ide itu.
Rui F Ribeiro
9
Sejauh yang saya tahu bahwa skrip nmap hanya memeriksa versi samba, tidak jika Anda rentan. AFAICT, untuk mengeksploitasi kerentanan, seseorang harus dapat mengunggah file ke server. Jadi kerentanannya tidak seserius yang Windows Eternalblue. Jika Anda mengizinkan mengunggah file melalui internet tanpa autentikasi, Anda memiliki masalah apakah samba rentan atau tidak.
Stéphane Chazelas
1
@ StéphaneChazelas terima kasih, saya belum punya waktu untuk memeriksa skrip
Rui F Ribeiro
21

Sebagian besar dari kita menjalankan server Samba di luar sana yang mungkin menjalankannya di dalam LAN, di belakang firewall dan tidak mengekspos port-portnya langsung ke dunia luar.

Ini akan menjadi praktik yang mengerikan jika Anda melakukannya, dan yang tidak dapat dimaafkan ketika ada yang sederhana, efektif dan gratis (seperti dalam bir dan dalam pidato) solusi VPN seperti OpenVPN. SMB tidak dirancang dengan mempertimbangkan Internet terbuka (heck, TCP / IP bahkan datang sebagai renungan dalam protokol itu) dan harus diperlakukan seperti itu. Saran tambahan berjalan aturan firewall pada file sharing tuan rumah sebenarnya yang daftar putih hanya lokal (dan akhirnya VPN) adresses jaringan pada semua port SMB ( 139/TCP, 445/TCP, 137/UDPdan 138/UDP).

Selain itu, jika use case Anda memungkinkan, Anda harus mempertimbangkan menjalankan Samba tidak terprivat (seperti, misalnya, sambapengguna yang bukan alias root). Saya mengerti bahwa tidaklah mudah untuk menggabungkan batasan-batasan dari NT ACL dengan POSIX ACL dengan pengaturan ini, tetapi jika memungkinkan untuk melakukannya dalam pengaturan khusus Anda, itu adalah cara yang harus dilakukan.

Akhirnya, bahkan dengan "penguncian" seperti itu, masih disarankan untuk menerapkan tambalan jika Anda bisa (karena ada kotak NAS di luar sana yang mungkin tidak bisa dilakukan), dan untuk menguji apakah use case khusus Anda berfungsi dengan nt pipe supportset to no.

Bojan Markovic
sumber
4
"Ini hanya dapat diakses di intranet" mungkin itu yang dipikirkan oleh beberapa admin di perusahaan tempat penyebaran WannaCry.
Carsten S