Các nhà nghiên cứu an ninh mạng vừa tiết lộ chi tiết về hai lỗ hổng liên quan đến kiểm soát truy cập ảnh hưởng đến dịch vụ message broker RabbitMQ. Những lỗ hổng này có thể cho phép kẻ tấn công làm rò rỉ client secret OAuth, khiến hạ tầng nhắn tin của doanh nghiệp đối mặt với nguy cơ bị chiếm quyền điều khiển và vượt qua ranh giới giữa các tenant.
Đội ngũ bảo mật của Miggo, đơn vị đã phát hiện và báo cáo các lỗ hổng này, cho biết một trong số đó "làm rò rỉ secret OAuth bảo mật của broker cho kẻ tấn công chưa được xác thực chỉ thông qua một yêu cầu duy nhất, tạo ra con đường trực tiếp để chiếm quyền kiểm soát toàn bộ broker trong các cấu hình sử dụng secret đó." Lỗ hổng thứ hai cho phép bất kỳ người dùng nào đã đăng nhập cũng có thể âm thầm đọc dữ liệu của các tenant khác.
Cả hai thiếu sót này được cho là đã tồn tại trong mã nguồn từ đầu năm 2024, ảnh hưởng đến các dòng phiên bản RabbitMQ từ 3.13.0 trở về sau. Chúng đã được xử lý trong các phiên bản 4.3.0, 4.2.6, 4.1.11, 4.0.20 và 3.13.15. Hiện chưa có bằng chứng nào về việc các lỗ hổng này bị khai thác tích cực trước khi được công bố công khai.
Chi tiết về hai lỗ hổng bảo mật
Dưới đây là mô tả ngắn gọn về hai lỗi này:
- CVE-2026-57219 (điểm CVSS: 8.7) - Một endpoint HTTP API cũ ("GET /api/auth") làm lộ client secret trên các bản cài đặt RabbitMQ có cấu hình OAuth 2 sử dụng khóa management.oauth_client_secret. Điều này cho phép kẻ tấn công đổi lấy token quản trị viên và giành quyền kiểm soát hoàn toàn mọi tin nhắn, hàng đợi (queue), người dùng và thiết lập của broker.
- CVE-2026-57221 (điểm CVSS: 5.3) - Thiếu sót trong phân quyền cho phép bất kỳ người dùng đã xác thực nào có khả năng kết nối với một virtual host đều có thể liệt kê tất cả tên hàng đợi và tên trao đổi (exchange) trong virtual host đó, đồng thời đọc số lượng tin nhắn và số lượng người tiêu thụ (consumer), bất kể quyền thực tế của họ là gì.
"Việc kiểm tra quyền hạn của endpoint này đã được mã hóa cứng để luôn cho phép yêu cầu, không giống như mọi endpoint quản trị nhạy cảm khác," Miggo nhận định về CVE-2026-57219. "Rủi ro là cao nhất ở những nơi cổng quản trị có thể truy cập được từ mạng không đáng tin cậy: các thiết lập đám mây hoặc đa tenant (multi-tenant), hoặc giao diện quản trị vô tình bị lộ ra internet."
Khuyến nghị và các lỗ hổng liên quan khác
Bên cạnh việc cập nhật lên các phiên bản mới nhất, người dùng được khuyên nên thực hiện thay đổi (rotate) client secret OAuth nếu giao diện quản trị có thể truy cập qua internet. Ngoài ra, cần giới hạn quyền truy cập vào cổng 15672, tách biệt các tenant bằng virtual host và triển khai các quy tắc tường lửa để chặn truy cập vào endpoint bị lỗi trên các phiên bản chưa được vá.
Thông tin này được đưa ra khi các nhà duy trì RabbitMQ cũng vừa xử lý hai lỗ hổng nghiêm trọng khác: một lỗi có thể dẫn đến việc vượt qua xác thực client TLS (điểm CVSS: 9.1) và một lỗi cho phép kẻ tấn công ở vị trí adversary-in-the-middle (AitM) giả mạo phản hồi JSON Web Key Set (JWKS), khiến broker chấp nhận các JWT tùy ý (điểm CVSS: 9.2).