CIFSwitch: Lỗ hổng Linux tồn tại 19 năm cho phép chiếm quyền root

WhiteHat Team

Administrators
Thành viên BQT
09/04/2020
141
1.943 bài viết
CIFSwitch: Lỗ hổng Linux tồn tại 19 năm cho phép chiếm quyền root
Các nhà nghiên cứu vừa công bố một lỗ hổng leo thang đặc quyền cục bộ mới trên Linux mang tên CIFSwitch, cho phép người dùng thông thường giành quyền root bằng cách khai thác cơ chế xác thực của giao thức chia sẻ tệp CIFS/SMB.
linux 19.png

Lỗ hổng CIFSwitch được phát hiện bởi kỹ sư bảo mật Asim Viladi Oglu Manizada thuộc SpaceX. Theo nhà nghiên cứu, lỗ hổng xuất phát từ cách Linux kernel xử lý các yêu cầu xác thực cifs.spnego khi truy cập các thư mục chia sẻ mạng CIFS/SMB sử dụng Kerberos hoặc SPNEGO.

Trong hoạt động bình thường, khi hệ thống Linux truy cập các thư mục chia sẻ qua CIFS/SMB, Linux kernel sẽ gửi yêu cầu cifs.spnego tới tiến trình người dùng cifs.upcall thuộc bộ công cụ cifs-utils. Tiến trình này được thực thi với quyền root và chịu trách nhiệm tạo hoặc lấy thông tin xác thực cần thiết, sau đó trả kết quả về cho kernel để hoàn tất quá trình kết nối.

Tuy nhiên, lỗ hổng nằm ở việc Linux kernel không kiểm tra chặt chẽ nguồn gốc của các yêu cầu cifs.spnego. Điều này khiến hệ thống không phân biệt được yêu cầu hợp lệ do kernel tạo ra và yêu cầu bị giả mạo từ không gian người dùng. Vì vậy, một tài khoản người dùng thông thường có thể tự tạo các yêu cầu hợp lệ về mặt định dạng để kích hoạt cơ chế xác thực vốn chỉ dành cho các luồng xử lý hệ thống.

Trong quá trình xử lý, cifs.upcall lại tin tưởng một số trường dữ liệu trong yêu cầu mà nó cho rằng xuất phát từ kernel. Kẻ tấn công có thể lợi dụng điểm này để thao túng các tham số, kích hoạt cơ chế chuyển đổi namespace và buộc hệ thống thực hiện tra cứu Name Service Switch (NSS) trước khi tiến trình hạ đặc quyền. Khi kết hợp với một thư viện NSS độc hại, chuỗi khai thác có thể dẫn đến thực thi mã với quyền root trên hệ thống.

Theo nhà nghiên cứu, CIFSwitch đã tồn tại từ năm 2007 và âm thầm hiện diện trong hệ sinh thái Linux trong gần 19 năm. Tuy nhiên, khả năng khai thác phụ thuộc vào nhiều yếu tố như phiên bản Linux kernel, phiên bản cifs-utils, việc hệ thống có hỗ trợ user namespace hay không, cũng như cấu hình các cơ chế bảo vệ như SELinux hoặc AppArmor.

Theo ghi nhận, các hệ điều hành bị ảnh hưởng theo cấu hình mặc định gồm Linux Mint 21.3 và 22.3, CentOS Stream 9, Rocky Linux 9, AlmaLinux 9, Kali Linux từ 2021.4 đến 2026.1 và SLES 15 SP7. Ngoài ra, một số hệ thống như Ubuntu, Debian, Pop!_OS, Oracle Linux, Amazon Linux và openSUSE cũng có thể bị ảnh hưởng nếu cài đặt gói cifs-utils.

Ngược lại, các phiên bản như Ubuntu 26.04, Fedora 40 đến Fedora 44, CentOS Stream 10, Rocky Linux 10, AlmaLinux 10, openSUSE Leap 16 và SLES 16 được đánh giá an toàn hơn nhờ các chính sách SELinux hoặc AppArmor mặc định đã ngăn chặn chuỗi khai thác. Amazon Linux 2 và các phiên bản Kali Linux cũ hơn cũng không bị ảnh hưởng do thiếu thành phần hỗ trợ namespace trong cifs-utils.

Hiện CIFSwitch đã được khắc phục thông qua bản vá bổ sung cơ chế xác thực nguồn gốc của các yêu cầu cifs.spnego, nhằm ngăn chặn việc giả mạo từ user space. Tuy nhiên, thời gian triển khai bản vá sẽ khác nhau tùy theo từng nhà phân phối và chu kỳ cập nhật hệ thống.

Các chuyên gia khuyến nghị quản trị viên cần nhanh chóng rà soát hệ thống và cập nhật các bản vá mới nhất. Trong trường hợp chưa thể nâng cấp ngay, cần vô hiệu hóa mô-đun CIFS nếu không sử dụng, gỡ bỏ gói cifs-utils trên các máy không cần truy cập chia sẻ SMB/CIFS và hạn chế hoặc vô hiệu hóa user namespace đối với người dùng thông thường.

Đáng chú ý, mã khai thác PoC cho CIFSwitch đã được công bố công khai. Dù chủ yếu phục vụ mục đích kiểm thử và đánh giá hiệu quả bản vá, sự xuất hiện của PoC cũng làm gia tăng nguy cơ bị khai thác trong thực tế. Rủi ro đặc biệt cao trên các hệ thống Linux chưa được cập nhật hoặc vẫn sử dụng cấu hình mặc định dễ bị ảnh hưởng.
1780311589423.png

CIFSwitch là lỗ hổng leo thang đặc quyền mới nhất trong một loạt các lỗ hổng ảnh hưởng đến hệ thống Linux được phát hiện gần đây, bao gồm “Copy Fail”, “Dirty Frag”, “Fragnesia”, “DirtyDecrypt” và “PinTheft”.​
 
Chỉnh sửa lần cuối:
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Thẻ
cifs cifswitch kerberos linux local privilege escalation root privilege smb spnego
Bên trên