이번에 발견된 서비스 거부 취약점은 resolv
라이브러리가 DNS 패킷 내에서 압축 해제된 도메인 이름의 길이를 충분히 검사하지 않는 문제에서 비롯됩니다. 공격자는 이 취약점을 악용하여 고도로 압축된 도메인 이름을 포함하는 악성 DNS 패킷을 조작할 수 있습니다. resolv
라이브러리가 이러한 패킷을 파싱하는 과정에서 도메인 이름의 결과 길이에 제한을 두지 않아, 이름 압축 해제 과정에서 막대한 양의 CPU 리소스를 소모하게 됩니다. 이러한 과도한 리소스 소모는 해당 응용 프로그램 스레드를 응답 불능 상태로 만들 수 있으며, 결과적으로 서비스 거부 상태를 초래하여 정상적인 서비스 제공을 방해하게 됩니다.
영향을 받는 resolv
gem 버전은 다음과 같습니다:
* Ruby 3.2 시리즈: resolv
버전 0.2.2 및 이전 버전
* Ruby 3.3 시리즈: resolv
버전 0.3.0
* Ruby 3.4 시리즈: resolv
버전 0.6.1 및 이전 버전
이 취약점은 Manu에 의해 발견되었으며, 2025년 7월 8일에 공식적으로 발표되었습니다. Ruby 사용자들은 자신의 환경에서 사용 중인 resolv
gem의 버전을 확인하고, 해당 취약점에 노출되어 있다면 즉시 권고된 버전 이상으로 업그레이드해야 합니다.