OpenBSD OpenSSH scp có thể giữ bit setuid/setgid khi tải tệp bằng quyền root

Lưu ý: Dữ liệu này chỉ có tính chất tham khảo, phục vụ nghiên cứu an ninh mạng.CyStack khuyến nghị người dùng không sử dụng các thông tin này nhằm các mục đích bất hợp pháp

Lỗ hổng CVE-2026-35385 là gì?

Lỗ hổng CVE-2026-35385 là lỗ hổng Improper Preservation of Permissions ảnh hưởng tới OpenSSH (phiên bản bị ảnh hưởng: < 10.3). Lỗ hổng này được xếp hạng ở mức Cao, với điểm CVSS 8.1. Các nguồn hiện có chưa ghi nhận lỗ hổng này bị khai thác.

Giới thiệu chung

Dữ liệu gốc

Trong OpenSSH trước 10.3, một tệp được tải xuống bằng scp có thể được cài đặt với bit setuid hoặc setgid, trái với kỳ vọng của một số người dùng, nếu quá trình tải xuống được thực hiện với quyền root bằng -O (giao thức scp cũ) và không dùng -p (chế độ bảo toàn).

Sản phẩm và phạm vi ảnh hưởng

  • OpenBSD OpenSSH: bản ghi chuẩn đánh dấu các phiên bản nhỏ hơn 10.3 là bị ảnh hưởng, với khoảng có cấu trúc bắt đầu từ 0; trạng thái mặc định bên ngoài khoảng bị ảnh hưởng được ghi là unaffected.
  • OpenSSH 10.3 và gói phát hành 10.3p1 chứa bản sửa lỗi upstream cho hành vi này.
  • Fedora đã ghi nhận các gói sửa lỗi riêng cho Fedora 42, Fedora 43 và Fedora 44. Đây là các ranh giới gói Fedora, không phải ranh giới phiên bản upstream dùng chung cho mọi bản phân phối.
  • Red Hat đã ghi nhận bản sửa cho các nhánh Red Hat Enterprise Linux 6 Extended Lifecycle Support extension, 7 Extended Lifecycle Support, 8, 9 và 10, cùng các nhánh Red Hat OpenShift Container Platform 4.12 đến 4.19. Gói backport của Red Hat có thể giữ số phiên bản upstream cũ, vì vậy cần đối chiếu advisory và build của đúng sản phẩm.
  • Bản ghi và các nguồn đã kiểm tra không thiết lập phạm vi ảnh hưởng cho các nhà cung cấp hoặc nhánh sản phẩm khác.

Chi tiết kỹ thuật

Lỗi nằm trong client scp và thuộc nhóm CWE-281, do xử lý không đúng các permission đặc biệt của tệp. Khi tiến trình chạy với quyền root tải tệp bằng giao thức scp legacy (-O) mà không dùng tùy chọn bảo toàn mode (-p), scp không xóa các bit setuid và setgid khỏi tệp được tải xuống. Nếu máy chủ từ xa cung cấp một tệp có các bit này, tệp đích có thể được cài đặt với quyền đặc biệt ngoài dự kiến. OpenSSH cho biết hành vi này bắt nguồn từ chương trình Berkeley rcp nguyên thủy. Chi tiết công khai không xác định hàm nội bộ hoặc lời gọi xử lý permission cụ thể nào chịu trách nhiệm.

Khả năng khai thác

Đường đi dễ bị ảnh hưởng nằm trong một phiên truyền tệp qua mạng, nhưng phải đồng thời có các điều kiện sau:

  • Một tiến trình hoặc quy trình tự động chạy với quyền root thực hiện tải tệp bằng scp.
  • Lệnh sử dụng chế độ legacy qua -O và không có -p.
  • Tệp từ nguồn từ xa mang các bit setuid hoặc setgid, hoặc nguồn đó không đáng tin cậy.

Bản ghi không cho biết kẻ tấn công có thể buộc máy khách root thực hiện thao tác tải xuống hay không, cũng không xác định yêu cầu xác thực ở phía máy chủ từ xa. Bản ghi chuẩn đánh dấu không có public exploit và không cung cấp trạng thái known exploited; không có chiến dịch, nạn nhân hoặc khai thác cụ thể nào được xác định trong bằng chứng đã cung cấp.

Tác động kỹ thuật

Tác động trực tiếp là tệp tải xuống có thể được lưu với bit setuid hoặc setgid mà người vận hành không mong đợi. Nếu tệp đó được thực thi trong ngữ cảnh phù hợp, nó có thể chạy với quyền cao hơn quyền của người gọi, tạo ra khả năng privilege escalation. Hậu quả có thể ảnh hưởng đến tính toàn vẹn và tính bảo mật của hệ thống, đồng thời có thể ảnh hưởng tính sẵn sàng nếu mã có quyền cao thực hiện thay đổi phá hoại. Lỗi không tự động thực thi tệp và bằng chứng hiện có không xác nhận một vụ xâm nhập đã hoàn tất.

Tác động đến tổ chức

Rủi ro vận hành tập trung ở các quy trình quản trị, triển khai hoặc tự động hóa tải tệp bằng quyền root. Một tệp được tải xuống có thể nhận các permission đặc biệt mà người vận hành không chủ ý, làm sai lệch giả định về nguồn gốc và quyền thực thi của tệp. Nếu tệp đó về sau được chạy hoặc được hệ thống khác sử dụng, nó có thể thực thi với quyền cao hơn dự kiến, dẫn đến nguy cơ thay đổi dữ liệu được bảo vệ, đọc dữ liệu nhạy cảm hoặc làm gián đoạn dịch vụ. Bằng chứng hiện có không xác nhận đã xảy ra xâm nhập, khai thác thực tế hoặc thất thoát dữ liệu.

Cách khắc phục

  1. Nâng OpenSSH lên bản phát hành 10.3 hoặc cài gói của nhà cung cấp có chứa bản sửa lỗi tương ứng. Với OpenSSH upstream, release 10.3p1 được phát hành cùng phần sửa cho scp.
  2. Với Fedora, áp dụng đúng gói đã được ghi nhận là đã sửa: openssh-9.9p1-14.fc42, openssh-10.0p1-9.fc43 hoặc openssh-10.2p1-8.fc44, tùy nhánh Fedora đang sử dụng.
  3. Với Red Hat Enterprise Linux và Red Hat OpenShift Container Platform, áp dụng erratum phù hợp với nhánh sản phẩm và xác nhận build openssh đã được cập nhật. Không nên đánh giá trạng thái chỉ bằng cách so sánh số phiên bản upstream, vì Red Hat backport bản sửa vào các gói cũ.
  4. Trong thời gian chưa cập nhật, tránh sử dụng -O legacy trong các quy trình tải tệp bằng quyền root và ưu tiên chế độ SFTP mặc định khi tương thích. Đây là biện pháp giảm rủi ro suy ra từ điều kiện ảnh hưởng, không phải bản vá được xác nhận thay thế cho cập nhật.
  5. Rà soát các tệp đã được tải qua quy trình bị ảnh hưởng và loại bỏ các bit setuid hoặc setgid ngoài chủ đích theo quy trình kiểm soát thay đổi của tổ chức. Red Hat không liệt kê một mitigation đáp ứng tiêu chí triển khai rộng rãi và ổn định thay cho bản cập nhật.

Cách phát hiện

Nên thực hiện các kiểm tra sau:

  • Kiểm kê các máy có cài OpenSSH client và đối chiếu gói đang dùng với bản sửa lỗi tương ứng của hệ điều hành hoặc nhà cung cấp.
  • Rà soát script, cron job, công cụ triển khai và quy trình tự động có chạy scp bằng quyền root, đặc biệt các lệnh có -O nhưng không có -p.
  • Kiểm tra metadata của các tệp đã được tải xuống bởi những quy trình này để tìm các bit setuid hoặc setgid không có chủ đích.
  • Nếu có process hoặc command-line telemetry, rà soát các lần gọi scp bằng quyền root với chế độ legacy. Đây là biện pháp giám sát phòng ngừa, không phải IOC đã được xác nhận.

Không thấy sự kiện trong log không chứng minh hệ thống an toàn, vì việc ghi nhận command line có thể không đầy đủ và lỗi chỉ xảy ra trong một tổ hợp điều kiện hẹp.

Nguồn (53)
Tìm hiểu thêm

Kiểm tra chuyên sâu cùng giải pháp quản lý rủi ro Web toàn diện

Giải pháp CyStack VulnScan liên tục phát hiện tài sản, xác minh lỗ hổng và giúp đội ngũ bảo mật ưu tiên khắc phục cho toàn bộ doanh nghiệp.