CVE-2022-28738: Giải phóng bộ nhớ kép trong biên dịch Regexp

Đăng bởi mame vào 12 Apr 2022

Một lỗ hổng giải phóng bộ nhớ kép đã được phát hiện trong quá trình biên dịch Regexp. Lỗ hổng này đã được gán mã CVE CVE-2022-28738. Chúng tôi đặc biệt khuyến nghị nâng cấp Ruby.

Chi tiết

Do một lỗi trong quá trình biên dịch Regexp, việc tạo một đối tượng Regexp với chuỗi nguồn được tạo thủ công có thể khiến cùng một vùng nhớ bị giải phóng hai lần. Đây được gọi là lỗ hổng “giải phóng kép” (double free). Lưu ý rằng, nhìn chung, việc tạo và sử dụng đối tượng Regexp được tạo từ đầu vào không tin cậy được coi là không an toàn. Tuy nhiên, trong trường hợp này, sau khi đánh giá toàn diện, chúng tôi xử lý vấn đề này như một lỗ hổng bảo mật.

Vui lòng cập nhật Ruby lên phiên bản 3.0.4 hoặc 3.1.2.

Các phiên bản bị ảnh hưởng

  • ruby 3.0.3 trở về trước
  • ruby 3.1.1 trở về trước

Lưu ý rằng dòng ruby 2.6 và 2.7 không bị ảnh hưởng.

Ghi công

Cảm ơn piao đã phát hiện vấn đề này.

Lịch sử

  • Công bố lần đầu vào 2022-04-12 12:00:00 (UTC)

Tin mới nhất

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

Thêm Tin...