🇰🇷 한글 설명
Symfony PHP 프레임워크의 PdoAdapter::doClear() 메서드에서 사용자 입력값인 $prefix를 적절히 바인딩하거나 이스케이프 처리하지 않고 DELETE 문을 생성하는 취약점이 발견되었습니다. 공격자가 $prefix 값을 조작할 경우 LIKE 구문을 탈출하여 쿼리 의미를 변경하거나 삭제 범위를 임의로 확장할 수 있습니다.
💡 쉬운 설명
웹사이트를 만드는 도구인 Symfony에서 데이터 삭제 명령어를 만들 때 사용자의 입력값을 제대로 검사하지 않는 문제가 있습니다. 이를 통해 해커가 삭제하면 안 되는 데이터까지 한꺼번에 지워버릴 수 있습니다.
🇺🇸 원문 (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, PdoAdapter::doClear() builds a DELETE statement using a namespace derived from the caller-supplied $prefix without binding or escaping it, allowing a caller able to influence $prefix to break out of the LIKE literal and alter query semantics or deletion scope. 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
⚔️ 공격 벡터
사용자가 입력한 $prefix 값을 통해 SQL 쿼리 구조를 조작하여 DELETE 문의 범위를 변경하는 방식
🛡️ 대응 방법
Symfony 프레임워크를 수정된 버전(5.4.52, 6.4.40, 7.4.12, 8.0.12 이상)으로 업데이트하십시오.
🔧 검증 코드
출력된 Symfony 컴포넌트의 버전이 취약점이 해결된 버전(5.4.52, 6.4.40, 7.4.12, 8.0.12 이상)인지 확인하십시오.
composer show symfony/components | grep -E 'version'