CVE-2024-27280: Lỗ hổng đọc vượt bộ đệm trong StringIO
Đăng bởi hsbt vào 21 Mar 2024
Chúng tôi đã phát hành gem StringIO phiên bản 3.0.1.1 và 3.0.1.2 bao gồm bản vá bảo mật cho lỗ hổng đọc vượt bộ đệm. Lỗ hổng này được gán mã định danh CVE CVE-2024-27280.
Chi tiết
Một vấn đề đã được phát hiện trong StringIO 3.0.1, được phân phối cùng Ruby 3.0.x đến 3.0.6 và 3.1.x đến 3.1.4.
Các phương thức ungetbyte và ungetc trên StringIO có thể đọc vượt quá cuối chuỗi, và lệnh gọi tiếp theo đến StringIO.gets có thể trả về giá trị bộ nhớ.
Lỗ hổng này không ảnh hưởng đến StringIO 3.0.3 và các phiên bản mới hơn, cũng như Ruby 3.2.x và các phiên bản mới hơn.
Hành động khuyến nghị
Chúng tôi khuyến nghị cập nhật gem StringIO lên phiên bản 3.0.3 hoặc mới hơn. Để đảm bảo tương thích với phiên bản đi kèm trong các dòng Ruby cũ hơn, bạn có thể cập nhật như sau:
- Người dùng Ruby 3.0: Cập nhật lên
stringio3.0.1.1 - Người dùng Ruby 3.1: Cập nhật lên
stringio3.0.1.2
Lưu ý: StringIO 3.0.1.2 không chỉ chứa bản sửa cho lỗ hổng này mà còn có sửa lỗi cho [Bug #19389].
Bạn có thể sử dụng gem update stringio để cập nhật. Nếu bạn đang sử dụng bundler, vui lòng thêm gem "stringio", ">= 3.0.1.2" vào Gemfile của bạn.
Phiên bản bị ảnh hưởng
- Ruby 3.0.6 trở xuống
- Ruby 3.1.4 trở xuống
- Gem StringIO 3.0.1 trở xuống
Ghi nhận
Cảm ơn david_h1 đã phát hiện vấn đề này.
Lịch sử
- Sửa phiên bản bị ảnh hưởng của StringIO (3.0.2 -> 3.0.1) vào 2024-04-11 12:50:00 (UTC)
- Công bố lần đầu vào 2024-03-21 4:00:00 (UTC)
Tin mới nhất
Phát hành Ruby 3.2.10
Ruby 3.2.10 đã được phát hành.
Đăng bởi hsbt vào 14 Jan 2026
Phát hành Ruby 4.0.1
Ruby 4.0.1 đã được phát hành.
Đăng bởi k0kubun vào 13 Jan 2026
Phát hành Ruby 4.0.0
Chúng tôi vui mừng thông báo phát hành Ruby 4.0.0. Ruby 4.0 giới thiệu “Ruby Box” và “ZJIT”, cùng nhiều cải tiến khác.
Đăng bởi naruse vào 25 Dec 2025
Diện mạo mới cho tài liệu Ruby
Tiếp theo việc thiết kế lại ruby-lang.org, chúng tôi có thêm tin vui để kỷ niệm 30 năm Ruby: docs.ruby-lang.org có diện mạo hoàn toàn...
Đăng bởi Stan Lo vào 23 Dec 2025