Rumah >Tutorial sistem >LINUX >Aplikasi kaedah untuk membaiki kelemahan SambaCry dalam sistem Linux

Aplikasi kaedah untuk membaiki kelemahan SambaCry dalam sistem Linux

王林
王林ke hadapan
2024-01-02 21:12:201221semak imbas
Pengenalan Samba telah lama menjadi standard untuk menyediakan perkhidmatan fail dan cetakan kongsi kepada pelanggan Windows pada sistem Linux. Digunakan oleh pengguna rumah, perniagaan bersaiz sederhana dan syarikat besar, ia menonjol sebagai penyelesaian terbaik dalam persekitaran yang berbilang sistem pengendalian wujud bersama, sesuatu yang dihadapi oleh kebanyakan pemasangan Samba disebabkan oleh penggunaan alat yang meluas Risiko serangan yang mengeksploitasi a kelemahan diketahui yang dianggap tidak penting sehingga berita tentang serangan ransomware WannaCry keluar.

Linux 系统中这样修复 SambaCry 漏洞

Kerentanan

Sistem lapuk dan tidak ditambal terdedah kepada kelemahan pelaksanaan kod jauh. Secara ringkas, ini bermakna seseorang yang mempunyai akses kepada bahagian boleh tulis boleh memuat naik sekeping kod sewenang-wenangnya dan melaksanakannya menggunakan keistimewaan root dalam pelayan.

Isu ini digambarkan sebagai CVE-2017-7494 di tapak web Samba dan diketahui menjejaskan Samba v3.5 (dikeluarkan pada awal Mac 2010) dan kemudian. Ia secara tidak rasmi dinamakan SambaCry kerana persamaan dengan WannaCry: kedua-duanya menyasarkan protokol SMB dan berkemungkinan cacing - yang boleh menyebabkan ia merebak dari satu sistem ke sistem yang lain.

Debian, Ubuntu, CentOS dan Red Hat telah mengambil tindakan pantas untuk melindungi pengguna mereka dan mengeluarkan patch untuk versi yang disokong mereka. Selain itu, penyelesaian keselamatan yang tidak disokong disediakan.

Kemas kini Samba

Seperti yang dinyatakan sebelum ini, terdapat dua cara untuk mengemas kini bergantung pada cara anda memasangnya sebelum ini:

Jika anda memasang Samba daripada repositori pengedaran anda

Mari lihat apa yang anda perlu lakukan dalam situasi ini:

Betulkan SambaCry di bawah Debian

Tambah baris berikut pada senarai sumber anda (/etc/apt/sources.list) untuk memastikan apt mendapat kemas kini keselamatan terkini:

deb http://security.debian.org stable/updates main
deb-src http://security.debian.org/ stable/updates main

Seterusnya, kemas kini pakej yang ada:

# aptitude update

Akhir sekali, pastikan versi pakej samba sepadan dengan versi pembetulan pepijat (lihat CVE-2017-7494):

# aptitude show samba

Linux 系统中这样修复 SambaCry 漏洞

Betulkan SambaCry dalam Debian

Membetulkan SambaCry dalam Ubuntu

Untuk memulakan pembaikan, semak pakej baharu yang tersedia dan kemas kini pakej Samba seperti berikut:

$ sudo apt-get update
$ sudo apt-get install samba

Versi Samba yang telah menetapkan CVE-2017-7494 adalah seperti berikut:

  • 17.04: samba 2:4.5.8+dfsg-0ubuntu0.17.04.2
  • 16.10: samba 2:4.4.5+dfsg-2ubuntu5.6
  • 16.04 LTS: samba 2:4.3.11+dfsg-0ubuntu0.16.04.7
  • 14.04 LTS: samba 2:4.3.11+dfsg-0ubuntu0.14.04.8

Akhir sekali, jalankan arahan di bawah untuk mengesahkan bahawa Ubuntu anda telah memasang versi yang betul.

$ sudo apt-cache show samba

Betulkan SambaCry dalam CentOS/RHEL 7

Versi Samba yang ditampal dalam EL 7 ialah samba-4.4.4-14.el7_3. Untuk memasangnya, ini lakukan:

# yum makecache fast
# yum update samba

Seperti sebelum ini, pastikan anda memasang versi Samba yang ditampal:

# yum info samba

Linux 系统中这样修复 SambaCry 漏洞

Betulkan SambaCry dalam CentOS

CentOS yang disokong lama dan versi RHEL yang lebih lama juga telah ditetapkan. Lihat RHSA-2017-1270 untuk maklumat lanjut.

Jika anda memasang Samba dari sumber

Nota: Prosedur berikut menganggap anda telah membina Samba dari sumber sebelum ini. Anda amat disyorkan untuk mencubanya dalam persekitaran ujian sebelum digunakan ke pelayan pengeluaran.

Selain itu, pastikan anda membuat sandaran fail smb.conf anda sebelum memulakan.

Dalam kes ini, kami juga akan menyusun dan mengemas kini Samba daripada sumber. Walau bagaimanapun, sebelum kita mula, kita mesti memastikan bahawa semua kebergantungan dipasang. Ambil perhatian bahawa ini mungkin mengambil masa beberapa minit.

Dalam Debian dan Ubuntu:

# aptitude install acl attr autoconf bison build-essential /
debhelper dnsutils docbook-xml docbook-xsl flex gdb krb5-user /
libacl1-dev libaio-dev libattr1-dev libblkid-dev libbsd-dev /
libcap-dev libcups2-dev libgnutls28-dev libjson-perl /
libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl /
libpopt-dev libreadline-dev perl perl-modules pkg-config /
python-all-dev python-dev python-dnspython python-crypto xsltproc /
zlib1g-dev libsystemd-dev libgpgme11-dev python-gpgme python-m2crypto

Dalam CentOS 7 atau serupa:

# yum install attr bind-utils docbook-style-xsl gcc gdb krb5-workstation /
libsemanage-python libxslt perl perl-ExtUtils-MakeMaker /
perl-Parse-Yapp perl-Test-Base pkgconfig policycoreutils-python /
python-crypto gnutls-devel libattr-devel keyutils-libs-devel /
libacl-devel libaio-devel libblkid-devel libxml2-devel openldap-devel /
pam-devel popt-devel python-devel readline-devel zlib-devel

Stop service (terjemahan LCTT: tidak perlu di sini):

# systemctl stop smbd

Muat turun dan nyahzip kod sumber (4.6.4 ialah versi terkini semasa penulisan):

# wget https://www.samba.org/samba/ftp/samba-latest.tar.gz 
# tar xzf samba-latest.tar.gz
# cd samba-4.6.4

Untuk tujuan maklumat, semak pilihan konfigurasi yang tersedia dengan arahan berikut.

# ./configure --help

Jika anda telah menggunakan beberapa pilihan dalam binaan sebelumnya, anda mungkin boleh memasukkan beberapa pilihan dalam pengembalian arahan di atas, atau anda boleh memilih untuk menggunakan nilai lalai:

# ./configure
# make
# make install

Akhirnya mulakan semula perkhidmatan.

# systemctl restart smbd

Dan sahkan anda menggunakan versi yang dikemas kini:

# smbstatus --version

Nilai yang dikembalikan di sini hendaklah 4.6.4.

Situasi lain

Jika anda menggunakan pengedaran yang tidak disokong dan tidak dapat menaik taraf kepada versi terkini atas sebab tertentu, anda mungkin ingin mempertimbangkan cadangan ini:

  • Jika SELinux didayakan, anda dilindungi!
  • Pastikan bahagian Samba dipasang dengan pilihan noexec. Ini menghalang binari daripada dilaksanakan daripada sistem fail yang dipasang.

Juga:

nt pipe support = no

Ditambah pada medan [global] smb.conf. Anda mungkin perlu ingat bahawa ini "mungkin melumpuhkan ciri tertentu klien Windows" mengikut Projek Samba.

Penting: Ambil perhatian bahawa sokongan paip nt = tiada pilihan melumpuhkan senarai kongsi untuk pelanggan Windows. Sebagai contoh: apabila anda memasukkan //10.100.10.2/ dalam Windows Explorer pada pelayan Samba, anda akan melihat "kebenaran ditolak". Pelanggan Windows perlu melaksanakan bahagian secara manual, seperti //10.100.10.2/share_name untuk mengakses bahagian tersebut.

Ringkasan

Dalam siaran ini, kami telah menerangkan kelemahan SambaCry dan cara mengurangkan kesannya. Kami harap anda boleh menggunakan maklumat ini untuk melindungi sistem yang anda bertanggungjawab.

Jika anda mempunyai sebarang soalan atau komen tentang artikel ini, sila gunakan kotak komen di bawah untuk memberitahu kami.


Mengenai pengarang:

Gabriel Cánepa ialah pentadbir sistem GNU/Linux dan pembangun web di Villa Mercedes di San Luis, Argentina. Dia bekerja untuk sebuah syarikat barangan pengguna antarabangsa yang besar dan sangat seronok menggunakan alat FOSS dalam kerja hariannya untuk meningkatkan produktiviti.


Atas ialah kandungan terperinci Aplikasi kaedah untuk membaiki kelemahan SambaCry dalam sistem Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:linuxprobe.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam