Cách vá lỗ hổng SambaCry (CVE-2017-7494) trên Linux

Từ lâu Samba là chuẩn cung cấp các file chia sẻ và các dịch vụ in cho client Windows trên các hệ thống * nix. Được sử dụng bởi người dùng: các hộ gia đình, các doanh nghiệp cỡ nhỏ và các công ty lớn, Samba “nổi lên” là giải pháp để truy cập các môi trường mà các hệ điều hành khác nhau cùng tồn tại.

Nếu như thời gian trước, trên Windows liên tục xảy ra 2 cuộc tấn công mạng cực kỳ nghiêm trọng của 2 loại mã độc là WannaCryEternalRocks đã khiến người dùng tìm mọi cách để bảo vệ dữ liệu quan trọng trong máy tính của mình, với WanaCry, mã độc này xâm nhập trực tiếp và chiếm lấy dữ liệu quan trọng, bắt người dùng trả phí để lấy lại tài liệu của mình, còn EternalRocks được cho là loại virus còn nguy hiểm hơn WannaCry rất nhiều lần, mã độc này không trực tiếp tống tiền như WannaCry mà hoạt động âm thầm trong hệ thống và có thể biến chuyển thành bất kỳ mã độc nào.

Trong bài viết này, Tải miễn phí sẽ giải thích cho bạn về sự nguy hiểm của Sambacách vá lỗ hổng SambaCry (CVE-2017-7494) trên hệ điều hành Linux của bạn. Tùy thuộc vào loại cài đặt của bạn (từ các kho hoặc từ nguồn), bạn sẽ cần phải thực hiện cách tiếp cận khác nhau.

Nếu đang sử dụng Samba trong bất kỳ môi trường hoặc biết ai đó đang sử dụng Samba, đọc tiếp bài viết dưới đây.

Dễ bị tổn thương

Các hệ thống lỗi thời và chưa được xử lý dễ bị tấn công bởi một lỗ hổng thực thi code từ xa (remote code execution). Nói một cách đơn giản, điều này có nghĩa là một người nào đó có quyền truy cập vào một phần được phép ghi có thể tải lên một đoạn mã tùy ý và thực thi đoạn mã đó bằng quyền root trong máy chủ, thường chúng ta chỉ nghe định nghĩa root trên các thiết bị Android

Vấn đề này được mô tả trên trang web của Samba là CVE-2017-7494 và được biết đến có ảnh hưởng trên phiên bản Samba 3.5 (phát hành vào đầu tháng 3 năm 2010) và các phiên bản Samba cao hơn. CVE-2017-7494 được đặt tên là Samba Cry do sự tương đồng của nó với WannaCry: cả hai đều nhắm đến giao thức SMB và có khả năng rất lớn - có thể khiến lan truyền từ hệ thống này sang hệ khác qua giao thức SMB.

Debian, Ubuntu, CentOS Red Hat đã có nhanh chóng phát hành bản vá lỗi cho các phiên bản mà họ hỗ trợ. Ngoài ra, các giải pháp bảo mật khác cũng được cung cấp cho những người dùng không được hỗ trợ.

Cách vá lỗ hổng SambaCry (CVE-2017-7494) trên Linux

Như đã đề cập ở trên, có 2 cách tiếp cận để thực hiện theo phương pháp cài đặt trước đây:

Trường hợp 1: Nếu cài đặt Samba từ kho của nhà phân phối

Nếu bạn cài đặt Samba từ các kho của nhà phân phối. Cùng tham khảo xem những gì bạn cần làm trong trường hợp này:

- Sửa Sambacry trên Debian:

Đảm bảo rằng apt được thiết lập để nhận các cập nhật bảo mật mới nhất bằng cách thêm các dòng dưới đây vào danh sách nguồn của bạn (/etc/apt/sources.list):

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

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

Tiếp theo cập nhạt danh sách các gói có sẵn:

# aptitude update

Cuối cùng đảm bảo rằng phiên bản của gói samba phù hợp với phiên bản các lỗ hổng bảo mật được sửa (xem CVE-2017-7494):

Link CVE-2017-7494: https://security-tracker.debian.org/tracker/CVE-2017-7494

# aptitude show samba

- Sửa Sambacry trên Ubuntu:

Để bắt đầu các bước, kiểm tra các gói mới có sẵn và cập nhật các gói samba:

$ sudo apt-get update

$ sudo apt-get install samba

Các phiên bản Samba được áp dụng sửa lỗi CVE-2017-7494 như sau:

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

Cuối cùng chạy lệnh dưới đây để xác nhận Ubuntu đã có quyền cài đặt phiên bản Samba:

$ sudo apt-cache show samba

- Sửa Sambacry trên CentOS/RHEL 7:

Phiên bản vá lỗi Samba trong EL 7 là samba-4.4.4-14.el7_3. Để cài đặt phiên bản, bạn sử dụng:

# yum makecache fast

# yum update samba

Giống như các bước ở trên, hãy chắc chắn rằng bạn đã có bản vá Samba:

# yum info samba

Các phiên bản cũ hơn, vẫn được hỗ trợ CentOS và RHEL cũng có sẵn các bản sửa lỗi có sẵn. Bạn có thể kiểm tra TẠI ĐÂY để tìm hiểu thêm thông tin.

Trường hợp 2: Nếu cài đặt Samba từ nguồn

Lưu ý:

Các bước dưới đây giả định bạn đã tích hợp Samba từ nguồn. Bạn nên thử nghiệm trong môi trường thử nghiệm TRƯỚC khi triển khai nó trên một máy chủ sản xuất.

Ngoài ra, đảm bảo rằng bạn đã sao lưu file smb.conf trước khi bắt đầu thực hiện quá trình.

Trong trường hợp này, chúng tôi cũng sẽ kết hợp và cập nhật Samba từ nguồn. Trước khi bắt đầu, cần đảm bảo rằng tất cả các yêu cầu cài đặt đã được cài đặt trước đó. Và quá trình diễn ra có thể mất vài phút.

- Trên Debian và 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

- Trên CentOS 7 hoặc các bản phân phối tương tự:

# 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

Ngừng các dịch vụ:

# systemctl stop smbd

Tải và bỏ trống nguồn (với 4.6.4 là phiên bản mới nhất):

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

# tar xzf samba-latest.tar.gz

# cd samba-4.6.4

Mục đích là thông tin, kiểm tra các tùy chọn cấu hình có sẵn cho bản phát hành hiện tại bằng:

# ./configure -help

Bạn có thể đưa một số tùy chọn được trả lại bởi lệnh trên nếu các lệnh được sử dụng trong bản build trước, hoặc bạn có thể chọn mặc định:

# ./configure

# make

# make install

Cuối cùng khởi động lại dịch vụ:

# systemctl restart smbd

Và xác nhận bạn đang chạy bản cập nhật:

# smbstatus --version

Đó là phiên bản 4.6.4.

Khái quát chung

Nếu đang chạy phiên bản không được hỗ trợ từ một nhà phân phối nhất định và vì một số lý do nào đó mà không thể nâng cấp lên phiên bản mới nhất gần đây, bạn có thể áp dụng các đề xuất dưới đây:

Nếu SELinux được kích hoạt, bạn sẽ được bảo vệ.

Đảm bảo Samba share được mount (gắn kết) với tùy chọn noexec. Điều này sẽ ngăn chặn việc thực thi các chương trình nhị phân nằm trên hệ thống tập tin được mount (gắn kết).

Thêm “nt pipe support = no” vào phần [global] của file smb.conf và khởi động lại dịch vụ. Lưu ý rằng khi thực hiện điều này "có thể vô hiệu hóa một số chức năng trong Windows client", theo dự án Samba.

Lưu ý quan trọng: Hãy nhớ rằng tùy chọn "nt pipe support = no" sẽ vô hiệu hóa tính năng share (chia sẻ) được liệt kê từ các client Windows.

Ví dụ, khi bạn nhập \\ 10.100.10.2 \ từ Windows Explorer trên máy chủ samba, kết quả bạn sẽ nhận được bị từ chối cho phép. Các client Windows sẽ phải tự xác định share (chia sẻ) theo cách thủ công là \\ 10.100.10.2 \ share_name để truy cập chia sẻ.

Trong bài viết trên, Tai mien phi đã mô tả lỗ hổng SambaCry và cách vá lỗ hổng SambaCry (CVE-2017-7494) trên Linux. Hy vọng các thông tin trong bài viết sẽ hữu ích với bạn.

Nếu bạn có bất kỳ câu hỏi hoặc thắc mắc các thông tin về SambaCry, bạn có thể để lại ý kiến của mình trong phần dưới đây, Taimienphi sẽ giải đáp các thắc mắc đó cho bạn.

Với người dùng Windows 10, lỗ hổng SMB zero-day đã được các chuyên gia cảnh báo rất nhiều từ trước tới nay, lỗ hổng SMB zero-day là nơi mà những mã độc có thể xâm nhập vào một cách dễ dàng, nguyên nhân thường là do người dùng click vào những liên kết lạ chưa virus mà không hề hay biết, để phòng tránh virus, mã độc lây lan qua lỗ hổng SMB zero-day chỉ còn cách không được click vào những đường dẫn lạ nhận được trên mạng xã hội, email mà thôi, để biết chi tiết về lỗ hổng này, bạn tham khảo bài đánh giá về lỗ hổng SMB zero-day và cách phòng tránh.

Khi các công cụ được sử dụng rộng rãi, hầu hết các bản cài đặt của Samba đều có nguy cơ bị tấn công để khai thác một lỗ hổng, tuy nhiên hầu hết các cuộc tấn công trước không được coi là nghiêm trọng cho đến khi cuộc tấn công ransomware WannaCry, xảy ra cách đây không lâu. Bài viết dưới đây Taimienphi.vn sẽ tập trung vào cách vá lỗ hổng SambaCry (CVE-2017-7494) trên Linux.
Lỗ hổng SymStealer trên Chrome ảnh hưởng đến 2.5 tỷ người dùng
Tor Browser 8.5.3 vá lỗ hổng bảo mật Zero-day trên Firefox
Lỗ hổng trên trình duyệt Tor làm rò rỉ địa chỉ IP người dùng
Bản vá Meltdown mở lỗ hổng bảo mật lớn hơn trên Windows 7
Lỗ hổng bảo mật của IE tạo cơ hội cho tin tặc đánh cắp file
Facebook vá lỗ hổng làm lộ thông tin các Admin trang

ĐỌC NHIỀU