Skip to main content

Lỗ hổng trên Samba cho phép tin tặc xâm nhập máy tính Linux từ xa

Samba là một phần mềm mã nguồn mở chạy trên các nền tảng HĐH phổ biến như Windows, Linux, IBM hay OpenVMS. Nó cho phép người dùng các hệ điều hành không phải Windows như GNU/Linux hay macOS chia sẻ thư mục, tập tin, máy tin với Windows thông qua giao thức SMB.

Lỗ hổng thực thi đoạn mã từ xa (CVE-2017-7497) mới được phát hiện ảnh hưởng tới tất cả các phiên bản mới kể từ Samba 3.5.0 phát hành vào 1/3/2010. Samba viết trên trang của mình vào hôm thứ Tư:

" Tất cả các phiên bản Samba từ 3.5.0 trở về sau đều có lỗ hổng thực thi đoạn mã từ xa, cho phép các máy client nhiễm độc tải nội dung lên thư mục dùng chung và khiến máy chủ tải rồi thực thi tập tin".
 Liệu có phải đây là phiên bản Linux của lỗ hổng EternalBlue?

Theo bộ tìm kiếm Shodan, hơn 485.000 máy tính cài đặt Samba sử dụng cổng 445 để truy cập Internet. Theo các nhà nghiên cứu tại Rapid 7, hơn 104.000 endpoint trên Internet chạy các phiên bản Samba có lỗ hổng, trong số đó 92.000 endpoint chạy các phiên bản Samba không được hỗ trợ.


Vì Samba chính là giao thức SMB sử dụng trên hệ thống Linux và Unix nên một vài chuyên gia cho rằng nó chính là phiên bản Linux của EternalBlue, lỗ hổng được WannaCry khai thác. Liệu ta có nên gọi đây là SambaCry?

Hãy nhớ rằng số lượng hệ thống có lỗ hổng là rất nhiều và việc khai thác lỗ hổng cũng rất dễ dàng, Samba hoàn toàn có thể tạo nên một cuộc tấn công quy mô lớn. Ngay cả mạng riêng tư Home Network cũng có thể bị khai thác nếu được dùng với thiết bị có lưu trữ gắn vào mạng (NAS).
Khai thác đoạn mã (sử dụng công cụ Metasploit)

Lỗ hổng này được khai thác qua cách Samba chia sẻ tập tin. Kẻ tấn công sử dụng đoạn module Samba ngẫu nhiên để tải lên thư mục chung và khi máy chủ người dùng tải về, nó sẽ thực thi đoạn mã nhiễm độc. Việc khai thác lỗ hổng rất đơn giản, chỉ cần một đoạn mã để thực thi đoạn mã độc trên máy đã bị nhiễm.

simple.create_pipe("/path/to/target.so")

Lỗ hổng Samba đã được đưa lên Metasploit (một framework dùng để kiểm tra, sử dụng các đoạn mã khai thác lỗ hổng), cho phép các nhà nghiên cứu cũng như hacker dễ dàng khai thác lỗ hổng.


Bán vá

Samba đã vá cho các phiên bản mới 4.6.4, 4..5.10 và 4.4.14. Người dùng các phiên bản vẫn còn lỗ hổng Samba được khuyến khích nhanh chóng cài đặt bản vá. Nếu không thể cập nhật ngay lên những bản mới nhất của Samba, bạn có thể tránh lỗ hổng này bằng cách thêm dòng sau vào tập tin smb.conf của Samba.

nt pipe support = no

Sau khi thêm vào, bạn chỉ cần khởi động lại SMB daemon (smbd) là xong. Thao tác này sẽ ngăn không cho máy client xâm nhập vào mạng cũng như vô hiệu hóa một số chức năng để kết nối với Windows.

Dù các nhà phát hành bản phân phối Linux, bao gồm Red Hat và Ubuntu đã đưa ra bản vá cho người dùng, mối nguy vẫn đến từ các thiết bị NAS khi chúng chưa thể cập nhật nhanh được. Craig Williams của hãng Cisco nói rằng bởi hầu hết các thiết bị NAS chạy Samba và chứa những dữ liệu quan trọng, lỗ hổng này có "nguy cơ trở thành sâu ransomware quy mô lớn đầu tiên trên Linux".

Trong khi đó, Netgear cũng đưa ra lời khuyên bảo mật liên quan tới CVE-2017-7494, rằng rất nhiều router và sản phẩm NAS đã bị ảnh hưởng bởi sử dụng phiên bản Samba 3.5.0 trở lên. Tuy vậy, công ty cũng mới phát hành hướng dẫn cập nhật cho các sản phẩm ReadyNAS chạy OS 6.x.

Nguồn: Quantrimang.com

Comments

Popular posts from this blog

Hướng dẫn cài đặt HĐH Kali Linux trên máy thật

Để cài đặt được HĐH Kali Linux trên máy thật các bạn chỉ cần chuẩn bị như sau: 1- USB >=4GB 2- Phiên bản Linux muốn cài đặt (Tải tại đây) 3- Tải win32 disk imager  (Tải tại đây)    Vậy là đã chuẩn bị xong ! TIẾP TỤC: Bước 1 . Khởi động chương trình UUI. Chọn I Agree. Bước 2 . Cấu hình UUI. Step 1: Select a Linux Distribution from the dropdown to put on your USB : Chọn hệ điều hành cần tạo, bạn chọn Kali Linux. Step 2: Select your Kali*.iso : Chọn file cài cài đặt Kali Linux. Lưu ý: tên file phải bắt đầu bằng Kali và kết thúc bằng .iso . Step 3: Select your USB Flash Drive Letter Only: Chọn thiết bị USB của bạn. Check vào We will format E:\ Drive as Fat32 để format lại USB của bạn. Cấu hình UUI Cảnh báo Format USB hiện lên, bạn chọn Yes để bắt đầu tiến trình. Cảnh báo format, chọn Yes. Tiến trình format và tạo USB Boot Kali Linux bắt đầu. Format và gắn nhãn UUI. Bắt đầu giải nén file .iso. Quá trình giải nén. Bước 3 . Hoàn t...

Làm thế nào để trở thành một Hacker Pro: 5 kĩ năng hacking cơ bản

Hacker - Thuật ngữ áp dụng cho người sử dụng máy tính và máy tính xách tay của mình để truy cập dữ liệu trái phép. Tìm hiểu về hacking và cố gắng nó không phải là một tội ác, trừ khi bạn đang làm việc đó để có được quyền truy cập trái phép vào dữ liệu. Bạn có thể sử dụng nó cho an ninh của bạn cũng vì vậy mà những người khác không thể hack bạn. Nếu bạn nghĩ rằng hacker chỉ hack vào mạng và đánh cắp dữ liệu, sau đó bạn là sai trong phần đó. Động cơ chính đằng sau cung cấp các khóa học hacking và học tập của mình với mọi người, những người quan tâm để trở thành hacker và đã sẵn sàng để đối phó với tin tặc khác, những người không sử dụng kỹ năng của họ độc đáo. Vì vậy, hôm nay tôi sẽ cho bạn biết về 5 kỹ năng hack mà sẽ cho bạn thấy làm thế nào để trở thành hacker. Bởi vì nếu bạn muốn trở thành một hacker chuyên nghiệp bạn cần phải đánh bại một. Vì vậy, hãy kiểm tra các kỹ năng dưới đây. 5 Skills Required To Become A Pro Hacker 1. Basic Computer and Networking Skills Kiến thức...

Master Proptypes trong React

React là một thư viện JavaScript cho việc xây dựng giao diện người dùng (UI). React giúp quản lý dễ các trạng thái (state) của ứng dụng hơn và sẽ thay đổi UI khi mà state thay đổi. React dựa vào các component và mỗi component có state của nó. Nếu như là state của component dùng setState() và có thể thể props từ component cha. The Problem Từ khi Reatc là một thư viện JavaScript và JS không cung cấp bất cứ thứ gì về type-checking , bỏ qua việc đó khi sử dụng props component có thể khiến bạn gặp bugs trong ứng dụng. Solution Bạn có thể dùng Js extensions như TypeScript cho việc checking, nhưng nếu bạn không muốn sử dụng nó, React cung cấp đầy đủ cho tính năng type-checking verify props của các component chính xác type. Sử dụng PropTypes, bạn có thể chắc chắn các component nhận đúng type của props. Ví dụ, ta có Person component và nhận 2 props: `name` và `age`. Sử dụng PropTypes, ta có thể chắc chắn `name` luôn luôn là `string` và `age` luôn luôn là number. Installing Pr...