Lỗi wildcard ACL của OpenBao cho phép LIST trái phép

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-63131 là gì?

Lỗ hổng CVE-2026-63131 là lỗ hổng Incorrect Authorization ảnh hưởng tới openbao (phiên bản bị ảnh hưởng: < 2.6.0). Lỗ hổng này được xếp hạng ở mức Trung bình, với điểm CVSS 6. 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

OpenBao là một hệ thống quản lý secrets dựa trên identity mã nguồn mở. Trước phiên bản 2.6.0, vault/policy/acl.go của OpenBao có thể đánh giá một ACL grant wildcard rộng hơn trước các path ACL trailing-wildcard cụ thể hơn với capabilities = ["deny"] cho thao tác LIST. Khi path cha cho phép LIST còn path con bị từ chối, việc tra cứu với dấu gạch chéo ở cuối do đó có thể cho phép liệt kê path bị từ chối. Các loại thao tác khác nằm ngoài phạm vi bị ảnh hưởng của repository advisory. Lỗi này được sửa trong phiên bản 2.6.0.

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

  • OpenBao trước 2.6.0: bị ảnh hưởng khi ACL có parent path cho phép LIST và child path trailing-wildcard có capabilities = ["deny"].
  • OpenBao 2.6.0: là bản được advisory và release notes xác nhận đã sửa lỗi.

Evidence hiện có không cung cấp một ma trận riêng cho các release branch song song khác. Không nên suy ra trạng thái của branch không được nêu chỉ từ việc 2.6.0 đã được xác nhận là bản sửa.

Chi tiết kỹ thuật

OpenBao xử lý ACL trong vault/policy/acl.go. Trước bản sửa, một rule wildcard rộng hơn cho phép LIST ở path cha có thể được đánh giá trước rule trailing-wildcard cụ thể hơn có capabilities = ["deny"] ở path con. Khi yêu cầu sử dụng dạng path có dấu gạch chéo ở cuối, quá trình tra cứu có thể chọn grant rộng hơn và cho phép liệt kê path lẽ ra bị từ chối. Điều kiện cần là policy phải có sự kết hợp giữa quyền LIST ở path cha và deny cụ thể hơn ở path con; người gọi cũng cần một quyền đã xác thực để gửi yêu cầu. Pull request sửa logic đánh giá để rule cụ thể hơn được tôn trọng trong trường hợp này. Chi tiết chính xác về backend và dữ liệu được trả về phụ thuộc vào policy và secret engine đang triển khai.

Khả năng khai thác

Lỗi có thể bị khai thác qua mạng bởi người dùng đã xác thực với quyền hạn thấp, không cần tương tác của người dùng khác. Điều kiện khai thác nằm ở cấu trúc ACL cụ thể, trong đó parent path cho phép LIST còn child path trailing-wildcard bị deny. Các bước khai thác thực tế, endpoint cụ thể và payload không được advisory công khai mô tả. Bản ghi được cung cấp đánh dấu không có public exploit đã biết và không nêu chiến dịch hay nạn nhân cụ thể; điều này không chứng minh rằng lỗi chưa từng bị khai thác.

Tác động kỹ thuật

  • Kết quả kỹ thuật là một phép kiểm tra authorization không tôn trọng deny cụ thể hơn, cho phép thao tác LIST trên path bị policy chặn.
  • Người khai thác vẫn cần một identity đã xác thực; lỗi không tự tạo quyền truy cập cho người chưa đăng nhập.
  • Phạm vi ảnh hưởng tập trung vào LIST và cấu trúc wildcard ACL nêu trên. Advisory loại trừ các operation type khác khỏi phạm vi bị ảnh hưởng.
  • Hậu quả có thể gồm lộ tên path, metadata hoặc, trong một số cấu hình được maintainers đề cập, giá trị secret. Quy mô dữ liệu thực tế phụ thuộc policy, secret engine và path cụ thể.
  • Record không thiết lập tác động đến integrity hoặc availability của OpenBao.

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

Lỗi làm suy yếu ranh giới truy cập mà tổ chức thiết lập bằng ACL policy của OpenBao.

  • Người dùng đã có tài khoản nhưng chỉ được cấp quyền hạn thấp có thể khám phá các path hoặc metadata đáng lẽ bị ẩn.
  • Với một số cấu hình path, maintainers lưu ý rằng việc vượt qua kiểm tra có thể làm lộ giá trị secret, bao gồm các trường hợp liên quan đến KVv2; không phải mọi deployment đều được chứng minh là lộ secret contents.
  • Advisory không ghi nhận ảnh hưởng đến thao tác khác ngoài LIST, vì vậy không có cơ sở từ record này để kết luận về khả năng ghi, xóa hoặc làm gián đoạn dịch vụ.
  • Việc lộ cấu trúc namespace hoặc tên secret vẫn có thể hỗ trợ các hoạt động truy cập trái phép tiếp theo.

Cách khắc phục

  1. Nâng cấp OpenBao lên đúng bản 2.6.0, là bản patched được xác nhận cho lỗi này.
  2. Trước và sau khi nâng cấp, kiểm kê các ACL policy có parent LIST grant kết hợp với child trailing-wildcard deny, sau đó kiểm thử các path nhạy cảm trong môi trường staging.
  3. Nếu chưa thể nâng cấp ngay, giảm phạm vi phơi nhiễm của các identity có quyền truy cập mạng và rà soát lại các policy phụ thuộc vào việc deny cụ thể hơn ghi đè parent LIST grant. Đây chỉ là biện pháp giảm thiểu tạm thời, không thay thế bản sửa.
  4. Với release branch không được nêu trong advisory, xác nhận hướng dẫn tương ứng từ vendor trước khi coi branch đó là đã được sửa.

Cách phát hiện

  1. Kiểm kê các instance OpenBao và xác định version đang chạy, đặc biệt các deployment có version nhỏ hơn 2.6.0.
  2. Rà soát ACL policy để tìm rule cho phép LIST trên wildcard hoặc parent path rộng, đi kèm rule capabilities = ["deny"] trên child path có trailing wildcard.
  3. Trong môi trường kiểm thử, kiểm tra các cặp policy này bằng một identity đã xác thực và xác nhận rằng yêu cầu LIST tới child path bị từ chối sau khi cập nhật.
  4. Có thể rà soát audit log đối với các yêu cầu LIST tới path nhạy cảm như một biện pháp phòng ngừa, nhưng evidence hiện có không xác định log event hoặc IOC riêng cho lỗi này. Không nên coi việc không thấy log là bằng chứng hệ thống an toàn.
Nguồn (16)
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.