🇰🇷 한글 설명
ms 패키지의 정규식 엔진이 긴 버전 문자열에 대해 지수적으로 증가하는 연산을 수행하면서 CPU를 과다 소비합니다. 공격자가 악의적인 버전 문자열을 전송하면 Node.js 애플리케이션의 서비스 거부를 유발할 수 있습니다.
💡 쉬운 설명
ms 패키지가 버전 번호를 확인하는 과정에서 특수한 긴 문자열이 들어오면 컴퓨터가 무한정 계산하게 됩니다. 이를 악용하면 서비스가 응답하지 않게 만들 수 있습니다.
🇺🇸 원문 (English)
The ms package before 0.7.1 for Node.js allows attackers to cause a denial of service (CPU consumption) via a long version string, aka a "regular expression denial of service (ReDoS)."
📍 영향받는 시스템
Node.js ms 패키지 0.7.1 이전 버전
⚔️ 공격 벡터
특별히 조작된 긴 버전 문자열을 입력하여 정규식 매칭에서 ReDoS(정규식 거부 서비스) 트리거
🛡️ 대응 방법
ms 패키지를 0.7.1 이상으로 즉시 업그레이드
🔧 검증 코드
출력된 버전이 0.7.1 미만이면 취약함, 0.7.1 이상이면 패치됨
npm list ms 2>/dev/null | grep -oE 'ms@[0-9.]+' | awk -F@ '{print $2}' | head -1