🇰🇷 한글 설명
Tandoor Recipes 2.6.10 미만 버전에서 인증된 사용자가 악의적인 정규표현식을 저장하면, 동일한 공간의 다른 사용자가 해당 레시피를 가져올 때 서비스 거부(DoS)가 발생할 수 있습니다. Python의 re.sub() 함수가 복잡도 검증이나 실행 시간 제한 없이 실행되어 Gunicorn 워커를 점유함으로써 시스템 가용성을 저해합니다.
💡 쉬운 설명
악의적인 규칙을 가진 레시피를 불러오면 컴퓨터가 계산을 끝내지 못하고 멈춰버리는 현상입니다. 이로 인해 서비스 전체가 느려지거나 접속이 불가능해질 수 있습니다.
🇺🇸 원문 (English)
Tandoor Recipes is an application for managing recipes, planning meals, and building shopping lists. Prior to 2.6.10, executes user-controlled Automation regular-expression patterns with Python re.sub() without complexity validation or an execution timeout when an authenticated user stores a catastrophic-backtracking regex and any user in the same Space imports a matching recipe. Request processing uses Automation.param_2, apply_regex_replace_automation, sub, api/recipe-from-source/. The attack works because the shared-Space automation engine evaluates the malicious pattern during recipe import and can occupy a Gunicorn worker until its request timeout. This can exhaust application worker slots and make the service unavailable to users. This issue is fixed in version 2.6.10.
📍 영향받는 시스템
Tandoor Recipes 2.6.10 미만 버전
⚔️ 공격 벡터
인증된 사용자가 악성 정규표현식이 포함된 자동화 패턴을 저장한 후, 다른 사용자가 해당 레시피를 가져오도록 유도
🛡️ 대응 방법
Tandoor Recipes를 최신 보안 패치가 적용된 2.6.10 버전 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전 번호가 2.6.10보다 낮으면 취약한 상태입니다.
pip show tandoor-recipes 2>/dev/null | grep -E 'Version'