🇰🇷 한글 설명
Symfony PHP 프레임워크의 UrlGenerator에서 라우트 매개변수 검증 로직의 결함이 발견되었습니다. 그룹화되지 않은 교체(alternation) 패턴 사용 시 중간 값이 앵커 없이 일치할 수 있어, 공격자가 프로토콜 상대 URL을 생성하여 외부 사이트로 유도할 수 있습니다.
💡 쉬운 설명
웹사이트 주소를 만드는 과정에서 검사 규칙이 허술하여, 공격자가 가짜 주소를 끼워 넣을 수 있는 문제입니다. 이를 통해 사용자를 악성 사이트로 몰아갈 위험이 있습니다.
🇺🇸 원문 (English)
Symfony is a PHP framework for web and console applications and a set of reusable PHP components. Prior to 5.4.52, 6.4.40, 7.4.12, and 8.0.12, UrlGenerator validates route parameters against a pattern built as ^ plus the raw requirement plus $; with ungrouped alternations, middle alternatives match as unanchored substrings, allowing a value such as //evil.com to satisfy a common locale requirement and generate a protocol-relative off-site URL. This issue is fixed in versions 5.4.52, 6.4.40, 7.4.12, and 8.0.12.
📍 영향받는 시스템
Symfony versions prior to 5.4.52, 6.4.40, 7.4.12, and 8.0.12
⚔️ 공격 벡터
라우트 매개변수에 조작된 값을 입력하여 프로토콜 상대 URL(예: //evil.com)을 생성하는 방식
🛡️ 대응 방법
Symfony를 최신 보안 패치 버전(5.4.52, 6.4.40, 7.4.12, 8.0.12 이상)으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 취약점이 해결된 버전(5.4.52, 6.4.40, 7.4.12, 8.0.12 이상)인지 확인하십시오.
composer show symfony/routing | grep 'versions'