Tràn Heap trong phân tích số dấu phẩy động (CVE-2013-4164)
Đăng bởi tenderlove vào 22 Nov 2013
Có lỗi tràn bộ nhớ trong việc phân tích số dấu phẩy động trong Ruby. Lỗ hổng này đã được gán mã CVE CVE-2013-4164.
Chi tiết
Bất cứ khi nào một chuỗi được chuyển đổi thành giá trị dấu phẩy động, một chuỗi được tạo đặc biệt có thể gây ra tràn heap. Điều này có thể dẫn đến tấn công từ chối dịch vụ qua lỗi segmentation và có thể thực thi mã tùy ý. Bất kỳ chương trình nào chuyển đổi đầu vào từ nguồn không xác định sang giá trị dấu phẩy động (đặc biệt phổ biến khi nhận JSON) đều bị ảnh hưởng.
Mã bị ảnh hưởng trông giống như thế này:
untrusted_data.to_f
Nhưng bất kỳ mã nào tạo ra giá trị dấu phẩy động từ dữ liệu bên ngoài đều bị ảnh hưởng, chẳng hạn:
JSON.parse untrusted_data
Lưu ý rằng lỗi này tương tự CVE-2009-0689.
Tất cả người dùng đang chạy phiên bản bị ảnh hưởng nên nâng cấp lên các phiên bản Ruby ĐÃ SỬA.
Phiên bản bị ảnh hưởng
- Tất cả phiên bản Ruby 1.8 sau Ruby 1.8.6 patchlevel 230
- Tất cả phiên bản Ruby 1.9 trước Ruby 1.9.3 patchlevel 484
- Tất cả phiên bản Ruby 2.0 trước Ruby 2.0.0 patchlevel 353
- Tất cả phiên bản Ruby 2.1 trước Ruby 2.1.0 preview2
- Trước trunk revision 43780
Giải pháp
Tất cả người dùng được khuyến nghị nâng cấp lên Ruby 1.9.3 patchlevel 484, Ruby 2.0.0 patchlevel 353 hoặc Ruby 2.1.0 preview2.
Xin lưu ý rằng dòng Ruby 1.8 hoặc bất kỳ phiên bản nào trước đó đã lỗi thời. Không có kế hoạch phát hành phiên bản đã sửa mới cho chúng. Người dùng các phiên bản đó được khuyên nâng cấp càng sớm càng tốt vì chúng tôi không thể đảm bảo việc tiếp tục cung cấp bản sửa lỗi bảo mật cho các phiên bản không còn được hỗ trợ.
Ghi nhận
Cảm ơn Charlie Somerville đã báo cáo vấn đề này!
Lịch sử
- Được công bố lần đầu vào 2013-11-22 04:00:00 UTC
- Công bố lần hai vào 2013-11-22 06:46:00 UTC
- Công bố lần ba vào 2013-11-22 22:46:00 UTC
- Công bố lần bốn vào 2013-12-10 12:09:38 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