CVE-2024-27281: RDoc에서 .rdoc_options 사용 시의 RCE 취약점

작성자: hsbt (2024-03-21)
번역자: shia

RCE 취약점에 대한 보안 수정이 포함된 RDoc gem 버전 6.3.4.1, 6.4.1.1, 6.5.1.1과 6.6.3.1을 릴리스했습니다. 이 취약점에는 CVE 식별자 CVE-2024-27281이 할당되었습니다.

세부 내용

Ruby 3.x부터 3.3.0까지 함께 배포된 RDoc 6.3.3부터 6.6.2까지 문제가 발견되었습니다.

(RDoc 설정에 사용되는) .rdoc_options를 YAML 파일로 파싱할 때, 복원할 수 있는 클래스에 대한 제한이 없기 때문에, 객체 주입 및 그로 인한 원격 코드 실행이 가능합니다.

문서 캐시를 읽어올 때도 조작된 캐시가 있을 경우, 객체 주입 및 그로 인한 원격 코드 실행이 가능합니다.

권장 조치

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

  • Ruby 3.0 사용자: rdoc 6.3.4.1로 업데이트
  • Ruby 3.1 사용자: rdoc 6.4.1.1로 업데이트
  • Ruby 3.2 사용자: rdoc 6.5.1.1로 업데이트

gem update rdoc를 사용하여 업데이트할 수 있습니다. bundler를 사용하는 경우 gem "rdoc", ">= 6.6.3.1"Gemfile에 추가하세요.

주의: 6.3.4, 6.4.1, 6.5.1, 6.6.3은 부정확한 수정을 포함하고 있습니다. 이 대신 6.3.4.1, 6.4.1.1, 6.5.1.1, 6.6.3.1로 업데이트하세요.

해당 버전

  • Ruby 3.0.6과 그 이하
  • Ruby 3.1.4와 그 이하
  • Ruby 3.2.3과 그 이하
  • Ruby 3.3.0
  • RDoc gem 6.3.3과 그 이하, 수정된 버전(6.3.4, 6.4.1, 6.5.1)을 제외한 6.4.0부터 6.6.2까지

도움을 준 사람

이 문제를 발견해 준 ooooooo_q에게 감사를 표합니다.

수정 이력

  • 2024-03-21 04:00:00 (UTC) 최초 공개

최근 소식

Ruby 4.0.0 릴리스

Ruby 4.0.0 릴리스를 알리게 되어 기쁩니다. Ruby 4.0은 Ruby::Box와 “ZJIT”를 도입하고, 많은 개선을 추가합니다.

작성자: naruse (2025-12-25)

Ruby 문서의 새로운 모습

ruby-lang.org 재디자인에 이어, Ruby의 30주년을 기념하는 또 다른 소식을 전합니다. docs.ruby-lang.org가 RDoc의 새로운 기본 테마인 Aliki와 함께 완전히 새로운 모습으로 탈바꿈했습니다.

작성자: Stan Lo (2025-12-23)

뉴스 더보기...