피드로 돌아가기
CVE-2026-33195: CVE-2026-33195: Path Traversal Vulnerability in Ruby on Rails Active Storage DiskService
Dev.toDev.to
Security

CVE-2026-33195: CVE-2026-33195: Path Traversal Vulnerability in Ruby on Rails Active Storage DiskService

Ruby on Rails Active Storage DiskService의 경로 검증 부족으로 인해 사용자 제어 가능한 blob 키를 통한 임의 파일 읽기/쓰기/삭제 공격 노출 (CVSS 8.0)

CVE Reports2026년 3월 24일5intermediate

Context

Ruby on Rails Active Storage의 DiskService 컴포넌트에서 경로 순회(Path Traversal) 취약점이 발견되었다. 애플리케이션이 사용자 정의 blob 키를 허용하는 경우 부충분한 경로 새니타이제이션으로 인해 인증되지 않은 공격자가 시스템의 임의 파일에 접근할 수 있다.

Technical Solution

  • CWE-22 경로 순회 취약점 해결: DiskService의 경로 검증 로직 강화를 통해 사용자 입력 경로 정규화 및 샌드박싱 구현
  • 패치 버전 배포: 7.2.3.1, 8.0.4.1, 8.1.2.1 버전에서 수정사항 포함
  • Gemfile 의존성 업데이트: bundle update activestorage 명령으로 패치된 활성 저장소 gem 적용
  • 커스텀 ActiveStorage::Service 구현 감사: 자체 구현한 스토리지 서비스에서 유사한 경로 해석 취약점 검토
  • 애플리케이션 수준 입력 검증: 사용자 정의 blob 키를 허용하는 커스텀 엔드포인트에서 추가 검증 로직 적용

Impact

CVSS 점수 8.0으로 분류되는 높은 심각도의 취약점이며, 임의 파일 읽기, 쓰기, 삭제 가능성이 있다.

Key Takeaway

DiskService와 같이 사용자 입력을 파일 시스템 경로로 변환하는 컴포넌트에서는 경로 정규화와 절대 경로 기반의 범위 제한이 필수이다. 모든 레일즈 애플리케이션은 해당하는 버전 범위를 확인하고 즉시 패치 적용이 필요하다.


Rails Active Storage를 사용하는 프로덕션 환경에서는 activestorage 버전이 7.2.3.1 미만, 또는 8.0.0.beta1 이상 8.0.4.1 미만, 또는 8.1.0.beta1 이상 8.1.2.1 미만인 경우 즉시 Gemfile을 수정하고 bundle update activestorage를 실행한 후 배포해야 한다.

원문 읽기