CVE-2018-8778: Lỗ hổng đọc dưới bộ đệm trong String#unpack
Đăng bởi usa vào 28 Mar 2018
Có một lỗ hổng đọc dưới bộ đệm (buffer under-read) trong phương thức String#unpack.
Lỗ hổng này đã được gán mã định danh CVE CVE-2018-8778.
Chi tiết
String#unpack nhận các chỉ định định dạng làm tham số, và có thể chỉ định vị trí phân tích dữ liệu bằng chỉ định @.
Nếu một số lớn được truyền vào cùng @, số đó sẽ được coi là giá trị âm, và xảy ra việc đọc ngoài bộ đệm.
Vì vậy, nếu một script nhận đầu vào bên ngoài làm đối số của String#unpack, kẻ tấn công có thể đọc dữ liệu trên heap.
Tất cả người dùng đang chạy phiên bản bị ảnh hưởng nên nâng cấp ngay lập tức.
Các phiên bản bị ảnh hưởng
- Ruby dòng 2.2: 2.2.9 trở về trước
- Ruby dòng 2.3: 2.3.6 trở về trước
- Ruby dòng 2.4: 2.4.3 trở về trước
- Ruby dòng 2.5: 2.5.0 trở về trước
- Ruby dòng 2.6: 2.6.0-preview1
- trước trunk revision r62992
Ghi công
Cảm ơn aerodudrizzt đã báo cáo vấn đề này.
Lịch sử
- Công bố lần đầu vào 2018-03-28 14: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