Lỗ hổng nghiêm trọng trong Ruby on Rails cho phép kẻ tấn công ghi file tùy ý thông qua ImageMagick
Một lỗ hổng bảo mật nghiêm trọng trong Ruby on Rails cho phép kẻ tấn công không cần xác thực có thể ghi file tùy ý lên server thông qua việc tải lên các file hình ảnh đã được tinh chỉnh, nếu ứng dụng...
- Giọng nữ Bắc
Dự án Ruby on Rails vừa phát đi cảnh báo về một lỗ hổng bảo mật nghiêm trọng trong thành phần Active Storage. Lỗ hổng này cho phép kẻ tấn công không cần xác thực có thể thực hiện hành vi ghi file tùy ý lên server thông qua các file hình ảnh được thiết kế đặc biệt, nếu ứng dụng sử dụng ImageMagick để xử lý dữ liệu tải lên.
Table Of Content
Chi tiết về lỗ hổng
Lỗ hổng nằm trong cách Active Storage xử lý file đính kèm. Khi một file được tải lên, trình phân tích (analyzer) của ImageMagick sẽ tự động kích hoạt. Kẻ tấn công có thể lợi dụng cơ chế này để chuyển hướng đến trình xử lý MSL (Magick Scripting Language) của ImageMagick. Vì MSL là một trình xử lý dạng script có khả năng đọc và ghi file, kẻ tấn công có thể tận dụng nó để ghi đè hoặc tạo ra các file độc hại trên server.
Trong trường hợp ứng dụng sử dụng dịch vụ lưu trữ Disk của Active Storage, kẻ tấn công thậm chí có thể đọc được các file nhạy cảm mà ứng dụng có quyền truy cập, bao gồm secret_key_base hoặc các thông tin đăng nhập hệ thống. Điều này có thể dẫn đến nguy cơ thực thi mã từ xa (RCE) hoặc di chuyển ngang (lateral movement) trong hạ tầng mạng.
Lỗ hổng này được đánh giá ở mức 9.8/10 theo thang điểm CVSS và được định danh là GHSA-f3w6-w445-fwh9.
Các ứng dụng bị ảnh hưởng
Một ứng dụng sẽ bị ảnh hưởng nếu hội đủ ba điều kiện sau:
- Sử dụng ImageMagick để xử lý ảnh trong Active Storage (cấu hình
config.active_storage.variant_processor = :mini_magick). - Chính sách bảo mật (security policy) của ImageMagick trên server không chặn các trình xử lý (coder) nguy hiểm.
- Ứng dụng cho phép người dùng không xác thực tải file lên.
Các phiên bản Rails trước 8.0.5.2 và các bản 8.1 trước 8.1.4.1 đều nằm trong diện bị ảnh hưởng. Ngoài ra, một lỗ hổng khác (GHSA-v924-7rp8-4mxh) với điểm CVSS 8.8 cũng được khắc phục trong cùng đợt cập nhật này, liên quan đến việc xử lý file tạm của ImageMagick và FFmpeg.
Khuyến nghị xử lý
Đội ngũ phát triển Rails khuyến cáo người dùng thực hiện các bước sau ngay lập tức:
- Nâng cấp ngay: Cập nhật lên phiên bản Rails 8.1.4.1 hoặc 8.0.5.2. Nếu sử dụng
:mini_magick, cần đảm bảo phiên bảnmini_magicktừ 5.1 trở lên. - Cấu hình chính sách bảo mật: Kiểm tra và áp dụng chính sách bảo mật mới cho ImageMagick để chặn các coder nguy hiểm như MSL, các lệnh liên quan đến Ghostscript và các tham chiếu file cục bộ/từ xa.
- Thay đổi thông tin nhạy cảm: Nếu ứng dụng đã từng lưu trữ file đính kèm bằng dịch vụ Disk, hãy cân nhắc thay đổi
secret_key_base, các khóa master, thông tin đăng nhập database và các token bên thứ ba để đảm bảo an toàn. - Giải pháp tạm thời: Nếu chưa thể nâng cấp, hãy sao chép các quy tắc từ file
policy.xmlmà Rails cung cấp vào chính sách hệ thống của ImageMagick (thường tại/etc/ImageMagick-7/policy.xml).
Nguồn tham khảo: The Hacker News



No Comment! Be the first one.