Lỗ hổng nghiêm trọng trong Ruby on Rails cho phép kẻ tấn công đọc file máy chủ qua ảnh tải lên
Một lỗ hổng bảo mật nghiêm trọng (CVE-2026-66066) trong Active Storage của Ruby on Rails vừa được công bố, cho phép kẻ tấn công không cần xác thực có thể đọc các file nhạy cảm trên server thông qua...
- Giọng nữ Bắc
Cộng đồng Ruby on Rails vừa ghi nhận một lỗ hổng bảo mật nghiêm trọng (định danh CVE-2026-66066) với điểm CVSS lên tới 9.5. Lỗ hổng này nằm trong thành phần Active Storage, cho phép kẻ tấn công không cần xác thực có thể đọc các file tùy ý trên server thông qua việc tải lên các file ảnh đã được dàn dựng đặc biệt.
Table Of Content
Chi tiết về lỗ hổng
Lỗ hổng này có khả năng làm lộ các thông tin nhạy cảm trong môi trường chạy Rails, bao gồm secret_key_base, khóa master của Rails, mật khẩu cơ sở dữ liệu, thông tin đăng nhập cloud storage và các API token. Việc để lộ những dữ liệu này có thể dẫn đến nguy cơ thực thi mã từ xa (RCE) hoặc cho phép kẻ tấn công di chuyển ngang (lateral movement) trong hệ thống.
Vấn đề nằm ở ranh giới tin cậy giữa Active Storage và thư viện xử lý ảnh libvips. Active Storage đã vô tình cho phép các file tải lên kích hoạt những thao tác không an toàn từ các thư viện bên thứ ba mà libvips hỗ trợ, từ đó dẫn đến việc tiết lộ nội dung file mà tiến trình Rails có quyền truy cập.
Các phiên bản bị ảnh hưởng
Các ứng dụng sử dụng libvips để xử lý ảnh trong Active Storage và cho phép người dùng tải lên ảnh từ nguồn không tin cậy đều có nguy cơ bị tấn công. Các phiên bản bị ảnh hưởng bao gồm:
- Rails 7.0.0 đến 7.2.3.1
- Rails 8.0.0 đến 8.0.5
- Rails 8.1.0 đến 8.1.3
- Rails 6.0.0 đến 6.1.7.10 (chỉ khi được cấu hình sử dụng Vips)
Các ứng dụng sử dụng MiniMagick không bị ảnh hưởng bởi lỗ hổng này.
Khuyến nghị bảo mật
Đội ngũ phát triển Rails đã phát hành các bản vá để khắc phục sự cố. Quản trị viên hệ thống cần thực hiện ngay các bước sau:
- Nâng cấp phiên bản: Cập nhật lên Rails 7.2.3.2, 8.0.5.1 hoặc 8.1.3.1.
- Cấu hình bảo mật: Đảm bảo hệ thống sử dụng
libvipsphiên bản 8.13 trở lên vàruby-vips2.2.1 trở lên. Kích hoạt tính năngVips.block_untrusted(true). - Xoay vòng thông tin xác thực: Sau khi cập nhật, bắt buộc phải thay đổi (rotate) tất cả các secret, mật khẩu database, API token và các khóa truy cập mà ứng dụng đã sử dụng, vì không thể đảm bảo rằng các thông tin này chưa bị kẻ tấn công đánh cắp trước khi bản vá được áp dụng.
Hiện tại, chưa có báo cáo về việc lỗ hổng này bị khai thác trong thực tế, tuy nhiên người dùng cần ưu tiên cập nhật sớm để bảo vệ hệ thống trước khi các chi tiết kỹ thuật chuyên sâu hơn được công bố rộng rãi.
Nguồn tham khảo: The Hacker News

No Comment! Be the first one.