🇰🇷 한글 설명
LobeChat 2.2.10-canary.15 미만 버전에서 정규 표현식 서비스 거부(ReDoS) 취약점이 발견되었습니다. 인증된 공격자가 스킬 임포트 과정에서 GitHub 저장소 URL 경로에 악의적인 패턴을 삽입하면, Node.js 이벤트 루프를 차단하여 서비스 거부를 유발할 수 있습니다.
💡 쉬운 설명
특정한 규칙을 가진 잘못된 주소를 입력하면 프로그램이 이를 처리하느라 과부하가 걸려 멈추게 되는 문제입니다. 이로 인해 다른 사용자들도 서비스를 이용하지 못하게 될 수 있습니다.
🇺🇸 원문 (English)
LobeChat before version 2.2.10-canary.15 contains a regular expression denial of service (ReDoS) vulnerability that allows authenticated attackers to block the Node.js event loop by supplying a catastrophic-backtracking pattern in a GitHub repository URL path during skill import. Attackers can craft a malicious basePath value containing unescaped regex metacharacters such as catastrophic-backtracking patterns, which are injected into a dynamically constructed regular expression in the findSkillMd function and executed synchronously against archive entries, denying service to all concurrent users for tens of seconds per request.
📍 영향받는 시스템
LobeChat version < 2.2.10-canary.15
⚔️ 공격 벡터
스킬 임포트 시 GitHub 저장소 URL의 basePath에 정규식 메타문자가 포함된 악성 패턴을 주입
🛡️ 대응 방법
LobeChat를 2.2.10-canary.15 이상의 최신 버전으로 업데이트
🔧 검증 코드
출력된 버전이 2.2.10-canary.15보다 낮으면 취약한 상태입니다.
npm list lobechat 2>/dev/null | grep -E 'lobechat@'