CVE-2023-28756: Time의 ReDoS 취약점

ReDoS 취약점에 대한 보안 수정이 적용된 time gem 0.1.1, 0.2.2 버전이 출시되었습니다. 이 취약점에는 CVE 식별자 CVE-2023-28756이 할당되었습니다.

세부 내용

Time 구문 분석기가 특정 문자가 포함된 유효하지 않은 문자열을 잘못 처리합니다. 이로 인해 문자열을 Time 객체로 구문 분석할 때 실행 시간이 늘어납니다.

time gem 0.1.0, 0.2.1, Ruby 2.7.7의 Time 라이브러리에서 ReDoS 문제가 발견되었습니다.

권장 조치

time gem을 0.2.2 버전 이상으로 업데이트하는 것이 좋습니다. 이전 Ruby 버전대에 포함된 버전과의 호환성을 보장하기 위해 다음과 같이 업데이트할 수 있습니다.

  • Ruby 3.0 사용자의 경우: time 0.1.1로 업데이트
  • Ruby 3.1/3.2 사용자의 경우: time 0.2.2로 업데이트

gem update time을 사용하여 업데이트할 수 있습니다. bundler를 사용 중이라면 gem "time", ">= 0.2.2"Gemfile에 추가해 주세요.

안타깝게도 time gem은 Ruby 3.0 이상에서만 작동합니다. Ruby 2.7을 사용 중이라면 최신 버전의 Ruby를 사용하시기 바랍니다.

해당 버전

  • Ruby 2.7.7 이하
  • time gem 0.1.0
  • time gem 0.2.1

도움을 준 사람

이 문제를 발견해 주신 ooooooo_q에게 감사드립니다.

수정 이력

  • 2023-03-30 11:00:00 (UTC) 최초 공개