Đã phát hiện một lỗi trong trình thu gom rác của Linux có thể dẫn đến leo thang đặc quyền 

lỗ hổng systemd

Vài ngày trước Jann Horn của nhóm Google Project Zero, người trước đây đã xác định các lỗ hổng Spectre và Meltdown, tiết lộ một kỹ thuật để khai thác một lỗ hổng được tìm thấy trong bộ thu gom rác nhân Linux (CVE-2021-4083).

Lỗ hổng là do tình trạng chủng tộc gây ra khi bộ mô tả tệp unix socket được làm sạch và có khả năng cho phép người dùng cục bộ không có đặc quyền thực thi mã của bạn ở cấp nhân.

Vấn đề thật thú vị bởi vì cửa sổ thời gian trong đó điều kiện cuộc đua xảy ra được đánh giá là quá nhỏ để tạo ra các lỗ hổng thực sự, nhưng tác giả của nghiên cứu đã chỉ ra rằng ngay cả những lỗ hổng ban đầu còn hoài nghi cũng có thể trở thành nguồn tấn công thực sự nếu người tạo ra lỗ hổng có đủ kỹ năng và thời gian cần thiết.

Yann sừng đã chỉ ra cách, với sự trợ giúp của các thao tác chạm khắc, có thể giảm tình trạng Sự kiện chạy đua xảy ra khi gọi hàm close () và fget () đồng thời tới một lỗ hổng sử dụng sau khi miễn phí đã được khai thác triệt để và giành quyền truy cập vào cấu trúc dữ liệu đã được giải phóng trong nhân.

Một điều kiện chủng tộc xảy ra trong quá trình đóng bộ mô tả tệp đồng thời gọi hàm close () và fget (). Lệnh gọi tới close () có thể được thực hiện trước khi fget () được thực thi, điều này sẽ gây nhầm lẫn cho bộ sưu tập mục không sử dụng vì, theo refcount, cấu trúc tệp sẽ không có tham chiếu bên ngoài, nhưng sẽ vẫn được đính kèm với bộ mô tả tệp, tức là trình thu gom rác sẽ cho rằng nó có quyền truy cập độc quyền vào cấu trúc, nhưng trên thực tế trong một khoảng thời gian ngắn, mục nhập còn lại trong bảng mô tả tệp sẽ tiếp tục cho biết rằng cấu trúc đang được giải phóng.

Để tăng xác suất bước vào một điều kiện cuộc đua, một số thủ thuật đã được sử dụng để tăng xác suất thành công nắm giữ ở mức 30% khi thực hiện tối ưu hóa hệ thống cụ thể. Ví dụ: để tăng thời gian truy cập vào một cấu trúc có bộ mô tả tệp lên vài trăm nano giây, dữ liệu đã được xóa khỏi bộ đệm của bộ xử lý bằng cách làm ô nhiễm bộ đệm với hoạt động trên một lõi CPU khác, điều này có thể khiến cấu trúc trở lại từ bộ nhớ và không phải bộ nhớ đệm nhanh của CPU.

Tính năng quan trọng thứ hai việc sử dụng các ngắt do bộ đếm thời gian phần cứng tạo ra để tăng thời gian đua. Thời gian đã được chọn để trình xử lý ngắt sẽ kích hoạt trong thời gian xảy ra điều kiện đua và ngắt thực thi mã trong một thời gian. Để trì hoãn thêm việc trả lại quyền điều khiển, epoll đã tạo ra khoảng 50 nghìn mục nhập trong hàng đợi, yêu cầu lặp lại trong trình xử lý ngắt.

Kỹ thuật khai thác lỗ hổng đã được tiết lộ sau khoảng thời gian 90 ngày không tiết lộ. Vấn đề

và nó đã được sửa vào đầu tháng 5.16. Bản sửa lỗi đã được bao gồm trong hạt nhân 2021 và cũng được chuyển đến các nhánh LTS của hạt nhân và các gói có hạt nhân được cung cấp trong các bản phân phối. Cần lưu ý rằng lỗ hổng đã được xác định trong quá trình phân tích vấn đề tương tự CVE-0920-XNUMX, sự cố này hiển thị trong bộ thu gom rác khi xử lý cờ MSG_PEEK.

Một lỗ hổng bảo mật khác đã được tìm thấy gần đây trong nhân Linux, nó là CVE-2022-0742 có thể làm cạn kiệt bộ nhớ có sẵn và gây ra từ chối dịch vụ từ xa bằng cách gửi các gói icmp6 được chế tạo đặc biệt. Sự cố liên quan đến rò rỉ bộ nhớ xảy ra khi xử lý thông báo ICMPv6 với loại 130 hoặc 131.

Sự cố đã xuất hiện từ kernel 5.13 và đã được khắc phục trong các phiên bản 5.16.13 và 5.15.27. Sự cố không ảnh hưởng đến các nhánh ổn định Debian, SUSE, Ubuntu LTS (18.04, 20.04) và RHEL, nó đã được khắc phục trên Arch Linux.

Cuối cùng nếu bạn muốn biết thêm về nó của ghi chú, bạn có thể kiểm tra chi tiết trong liên kết sau.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.