CVE-2021-43822 in Doctrine-DBAL
요약
\~에 의해 VulDB • 2026. 06. 24.
Jackalope Doctrine-DBAL은 관계형 데이터베이스를 사용하여 데이터를 영구 저장하는 PHP Content Repository API(PHPCR)의 구현체입니다. 영향을 받는 버전에서는 사용자가 노드 이름이나 쿼리를 지정할 경우 SQL 인젝션을 유발할 수 있습니다. 이 문제를 해결하려면 버전 1.7.4로 업그레이드하십시오. 불가능한 경우, `Jackalope\Transport\DoctrineDBAL\Query\QOMWalker` 클래스에서 `sv:name`을 필터링하기 위해 `$property`가 사용되는 모든 곳에서 다음 코드를 사용하여 이스케이프 처리할 수 있습니다: `XPath::escape($property)`. JCR 사양에 따르면 노드 이름과 XPath에는 `"`, `;`를 포함할 수 있습니다. 쿼리 객체 모델을 Doctrine DBAL 쿼리로 변환하는 Jackalope 구성 요소가 이름과 경로를 적절히 이스케이프하지 않아, 이에 따라 조작된 노드 이름을 통해 SQL 인젝션이 발생할 수 있습니다. 사용자 입력으로부터 쿼리가 수행되지 않거나, `;`를 포함하지 않도록 사용자 입력을 검증한다면 영향을 받지 않습니다.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.