🇰🇷 한글 설명
Symfony PHP 프레임워크의 파서에서 깊게 중첩된 매핑이나 시퀀스를 처리할 때 재귀 호출의 깊이 제한이 없어 발생하는 취약점입니다. 공격자가 조작된 문서를 입력할 경우 PHP 스택이 고갈되어 워커 프로세스가 충돌하고 서비스 거부(DoS) 상태가 될 수 있습니다.
💡 쉬운 설명
웹사이트의 데이터를 읽어들이는 프로그램이 너무 복잡하게 꼬인 데이터를 받으면 과부하가 걸려 멈춰버리는 문제입니다. 공격자가 일부러 복잡한 데이터를 보내 서버를 마비시킬 수 있습니다.
🇺🇸 원문 (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, when the parser is exposed to attacker-controlled input, deeply nested mappings or sequences cause both the block-level (Parser::parseBlock()) and inline (Inline::parseSequence() / Inline::parseMapping()) parsers to recurse without a depth limit. A crafted document exhausts the PHP stack and crashes the worker. 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
⚔️ 공격 벡터
공격자가 제어 가능한 입력값을 통해 깊게 중첩된 YAML/데이터 구조를 전송하여 서버의 스택 메모리를 고갈시킴
🛡️ 대응 방법
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/yaml | grep -E 'versions'