🇰🇷 한글 설명
Parse Server의 특정 버전에서 잘못된 정규 표현식 패턴을 사용하여 LiveQuery를 구독할 경우 서버가 충돌하는 취약점이 발견되었습니다. 공격자가 유효하지 않은 패턴을 전송하면 서버 프로세스가 종료되어 모든 연결된 클라이언트에게 서비스 거부(DoS) 상태를 유발할 수 있습니다.
💡 쉬운 설명
잘못된 규칙을 서버에 전달하여 서버를 강제로 꺼지게 만드는 공격입니다. 이 공격을 받으면 서버가 멈춰서 모든 사용자가 서비스를 이용할 수 없게 됩니다.
🇺🇸 원문 (English)
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.6.0-alpha.19 and 8.6.43, a remote attacker can crash the Parse Server by subscribing to a LiveQuery with an invalid regular expression pattern. The server process terminates when the invalid pattern reaches the regex engine during subscription matching, causing denial of service for all connected clients. The fix in 9.6.0-alpha.19 and 8.6.43 validates regular expression patterns at subscription time, rejecting invalid patterns before they are stored. Additionally, a defense-in-depth try-catch prevents any subscription matching error from crashing the server process. As a workaround, disable LiveQuery if it is not needed.
📍 영향받는 시스템
Parse Server 9.6.0-alpha.19 및 8.6.43 미만 버전
⚔️ 공격 벡터
LiveQuery 구독 시 유효하지 않은 정규 표현식 패턴을 전송하여 서버 프로세스 종료 유도
🛡️ 대응 방법
Parse Server를 9.6.0-alpha.19 또는 8.6.43 이상 버전으로 업데이트하거나, 필요하지 않은 경우 LiveQuery 기능을 비활성화하십시오.
🔧 검증 코드
출력된 parse-server의 버전이 9.6.0-alpha.19 또는 8.6.43보다 낮은지 확인하십시오.