🔍 CVE-2026-32271

0.0
CVSS Score
UNKNOWN
2026-04-13
2026-04-17 15:26
✅ 완료

🇰🇷 한글 설명

Craft Commerce의 TotalRevenue 위젯에 있는 SQL 인젝션 취약점으로, 인증된 제어판 사용자가 네 단계의 공격 체인을 통해 원격 코드 실행을 달성할 수 있습니다. PHP 객체 직렬화와 yii2-queue의 unserialize() 호출을 악용하여 GuzzleHttp 가젯 체인으로 웹셸을 작성합니다.

💡 쉬운 설명

Craft Commerce 위젯 설정의 입력값 검증 부재로 SQL 명령어를 조작할 수 있습니다. 이를 통해 악의적인 PHP 코드를 실행하여 서버 전체를 장악할 수 있습니다.

🇺🇸 원문 (English)

Craft Commerce is an ecommerce platform for Craft CMS. In versions 4.0.0 through 4.10.2 and 5.0.0 through 5.5.4, there is an SQL injection vulnerability in the Commerce TotalRevenue widget which allows any authenticated control panel user to achieve remote code execution through a four-step exploitation chain. The attack exploits unsanitized widget settings interpolated into SQL expressions, combined with PDO's default multi-statement query support, to inject a maliciously serialized PHP object into the queue table. When the queue consumer processes the injected job, the unrestricted unserialize() call in yii2-queue instantiates a GuzzleHttp FileCookieJar gadget chain whose __destruct() method writes a PHP webshell to the server's webroot. The complete chain requires only three HTTP requests, no administrative privileges, and results in arbitrary command execution as the PHP process user, with queue processing triggered via an unauthenticated endpoint. This issue has been fixed in versions 4.10.3 and 5.5.5.

📍 영향받는 시스템

Craft Commerce 4.0.0-4.10.2, 5.0.0-5.5.4

⚔️ 공격 벡터

인증된 제어판 사용자의 TotalRevenue 위젯 설정을 통한 SQL 인젝션으로 큐 테이블에 악성 직렬화 PHP 객체 주입

🛡️ 대응 방법

Craft Commerce를 4.10.3 또는 5.5.5 이상으로 즉시 업그레이드

🔧 검증 코드

버전이 4.0.0-4.10.2 또는 5.0.0-5.5.4에 해당하면 취약, 4.10.3 또는 5.5.5 이상이면 패치됨

Shell / Script
grep -oE '"version"\s*:\s*"[^"]+"' composer.lock | grep craftcms/commerce -A 1 | grep -oE '([0-9]+\.[0-9]+\.[0-9]+)'

💻 영향받는 소프트웨어

PHP