CVE-2022-24713
Rust의 regex 크레이트에서의 정규식 서비스 거부(ReDoS)
- 게시됨
- 2022. 3. 8.
- 업데이트됨
- 2025. 4. 23.
- CNA 할당 중
- GitHub_M
- 증거 관찰됨
- 2026. 8. 5.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H보통 · 다음 30일
- 백분위수
- 96.5%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
regex는 Rust 언어를 위한 정규 표현식 구현체입니다. regex 크레이트는 신뢰할 수 없는 정규식이나 신뢰할 수 있는 정규식과 일치하는 신뢰할 수 없는 입력으로 인한 서비스 거부(DoS) 공격을 방지하기 위한 내장 완화 조치를 제공합니다. 이러한 (조정 가능한) 완화 조치는 이미 공격을 방지하기 위한 합리적인 기본값을 제공합니다. 이 보장은 문서화되어 있으며 크레이트 API의 일부로 간주됩니다. 불행히도, 신뢰할 수 없는 정규식이 파싱 중에 임의의 시간을 소비하지 못하도록 설계된 완화 조치에서 버그가 발견되었으며, 이러한 완화 조치를 우회하는 정규식을 제작하는 것이 가능합니다. 이로 인해 사용자 제어 하에 있는 신뢰할 수 없는 정규식을 허용하는 서비스에 특수하게 제작된 정규식을 전송하여 서비스 거부 공격을 수행할 수 있습니다. regex 크레이트의 1.5.4 이하 모든 버전이 이 문제의 영향을 받습니다. 수정 사항은 regex 1.5.5부터 포함됩니다. 사용자 제어 정규식을 허용하는 모든 사용자는 즉시 최신 버전의 regex 크레이트로 업그레이드할 것을 권장합니다. 불행히도 고정된 문제 정규식 집합은 없습니다. 이 취약점을 악용하도록 제작될 수 있는 정규식은 사실상 무한하기 때문입니다. 이 때문에 알려진 문제 정규식을 차단하는 것은 권장되지 않습니다.
소스
1Ubuntu에서 CVE-2022-24713에 대한 개념 증명/테스트
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.