ื”ืขื“ื›ื•ืŸ ืฉืืชื ืœื ื™ื›ื•ืœื™ื ืœื”ืจืฉื•ืช ืœืขืฆืžื›ื ืœื“ืœื’ ืขืœื™ื•: ืกื•ืฃ ื”ืชืžื™ื›ื” ื‘-Office 2016 ื•-Office 2019

ืงืจื ืขื›ืฉื™ื•
ืื ื• ืžืฉืชืžืฉื™ื ื‘ื‘ื™ื ื” ืžืœืื›ื•ืชื™ืช ืœืชืจื’ื•ื ื”ืืชืจ, ื•ืขืœ ืืฃ ืฉืื ื• ืฉื•ืืคื™ื ืœื“ื™ื•ืง ืžืจื‘ื™, ื™ื™ืชื›ืŸ ืฉื”ืชืจื’ื•ืžื™ื ืื™ื ื ืžื“ื•ื™ืงื™ื ื‘ืžืืช ื”ืื—ื•ื–ื™ื. ืื ื• ืžื•ื“ื™ื ืœืš ืขืœ ื”ื”ื‘ื ื”.

CVE-2025-32432: ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืœื ืžืื•ืžืช ื‘-Craft CMS

ืขึทืœ ื™ึฐื“ึตื™ OPSWAT
ืฉืชืฃ ืืช ื”ืคื•ืกื˜ ื”ื–ื”
ืฉื ื™ ื—ื•ืงืจื™ื ืž- OPSWAT ืชื•ื›ื ื™ืช ืžืœื’ื•ืช ืœืชื•ืืจ ืฉื ื™ ื‘ืื‘ื˜ื—ืช ืกื™ื™ื‘ืจ ื‘ืชืฉืชื™ื•ืช ืงืจื™ื˜ื™ื•ืช ืขืœ ืจืงืข ื›ื—ื•ืœ

ื‘ืืคืจื™ืœ 2025, Orange Cyberdefense ื’ื™ืœืชื” ืคื’ื™ืขื•ืช ืงืจื™ื˜ื™ืช ื‘-Craft CMS ื‘ืžื”ืœืš ื—ืงื™ืจืช ืชืงืจื™ืช, ืฉื›ืขืช ืžืกื•ืžื ืช ื›- CVE-2025-32432 . ื”ืคื’ื ืžืืคืฉืจ ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง (RCE) ืœื ืžืื•ืžืช ืขื ืฆื™ื•ืŸ ื—ื•ืžืจื” ืžืงืกื™ืžืœื™ ืฉืœ 10.0 (ืงืจื™ื˜ื™) ื‘-CVSS v3.1 ืขืœ ืคื™ NVD (National Vulnerability Database).

ื›ื—ืœืง ืžืชื•ื›ื ื™ืช ื”ืžืœื’ื•ืช ืœื‘ื•ื’ืจื™ ืื‘ื˜ื—ืช ืกื™ื™ื‘ืจ ื‘ืชืฉืชื™ื•ืช ืงืจื™ื˜ื™ื•ืช OPSWAT , ืขืžื™ืชื™ื ื• ืขืจื›ื• ืžื—ืงืจ ืžืงื™ืฃ ืขืœ ืคื’ื™ืขื•ืช ื–ื•, ื›ื•ืœืœ ืฉื—ื–ื•ืจ ื”ื ื™ืฆื•ืœ, ืื™ืžื•ืช ื”ืฉืคืขืชื”, ื”ืขืจื›ืช ืกื™ื›ื•ื ื™ื ืืจื’ื•ื ื™ื™ื ื•ื ื™ืชื•ื— ืืกื˜ืจื˜ื’ื™ื•ืช ื”ื’ื ื” ืžื•ืžืœืฆื•ืช.

ื‘ืœื•ื’ ื–ื” ืžืกืคืง ืกืงื™ืจื” ืžืขืžื™ืงื” ื•ืžืงื™ืคื” ืฉืœ CVE-2025-32432, ืžื ืชื— ืืช ืฉื•ืจืฉ ื”ื‘ืขื™ื”, ื–ืจื™ืžืช ื”ื ื™ืฆื•ืœ ื•ื”ื”ืฉืœื›ื•ืช ื”ืื‘ื˜ื—ืชื™ื•ืช ื”ืจื—ื‘ื•ืช ื™ื•ืชืจ, ืชื•ืš ืžืชืŸ ื”ื ื—ื™ื•ืช ืžืขืฉื™ื•ืช ืœืืจื’ื•ื ื™ื ืœื”ืชื’ื•ื ืŸ ืžืคื ื™ ืื™ื•ื ื–ื”.

ืžื‘ื•ื ืœ-CVE-2025-32432

CVE-2025-32432 ืžืฉืคื™ืข ืขืœ ื’ืจืกืื•ืช 3.0.0-RC1 ืขื“ 3.9.14, 4.0.0-RC1 ืขื“ 4.14.14, ื•-5.0.0-RC1 ืขื“ 5.6.16 ืฉืœ Craft CMS. ื”ืคื’ื, ื”ืžืกื•ื•ื’ ื›-CWE-94: ื”ื–ืจืงืช ืงื•ื“, ื ื•ื‘ืข ืžื˜ื™ืคื•ืœ ืœื ืชืงื™ืŸ ื‘ืงืœื˜ ืœื ืืžื™ืŸ, ืžื” ืฉืžืืคืฉืจ ื‘ืกื•ืคื• ืฉืœ ื“ื‘ืจ RCE ืœื ืžืื•ืžืช.ย ย 

ืžื“ื“ื™ CVSS 3.x ืขื‘ื•ืจ ืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ CVE-2025-32432 ื‘-Cramt CMS, ื”ืžืฆื™ื’ื™ื ืฆื™ื•ื ื™ ื‘ืกื™ืก ืงืจื™ื˜ื™ื™ื.

ื ื™ื”ื•ืœ ืชื•ื›ืŸ ืงืจืืคื˜ ื•ืžืกื’ืจืช Yii

Craft CMS ื”ื™ื ืžืขืจื›ืช ื ื™ื”ื•ืœ ืชื•ื›ืŸ ืžื•ื“ืจื ื™ืช ื”ืžืืคืฉืจืช ืœืžืคืชื—ื™ื ื•ืœืฆื•ื•ืชื™ ืชื•ื›ืŸ ืœื‘ื ื•ืช ืืชืจื™ื ื’ืžื™ืฉื™ื ื•ืžื•ืชืืžื™ื ืื™ืฉื™ืช ืœื—ืœื•ื˜ื™ืŸ, ื‘ืžืงื•ื ืœื”ืกืชืžืš ืขืœ ืชื‘ื ื™ื•ืช ื ื•ืงืฉื•ืช ื•ืžื•ื’ื“ืจื•ืช ืžืจืืฉ. ืขื ืื™ืžื•ืฅ ื‘ื™ื•ืชืจ ืž-46,000 ืืชืจื™ื ื‘ืจื—ื‘ื™ ื”ืขื•ืœื, ื”ื™ื ื ืžืฆืืช ื‘ืฉื™ืžื•ืฉ ื ืจื—ื‘ ื•ื’ื ื‘ืžื˜ืจื” ืชื›ื•ืคื” ืขื‘ื•ืจ ืชื•ืงืคื™ื ื”ืžื—ืคืฉื™ื ืคื’ื™ืขื•ื™ื•ืช ื‘ืขืœื•ืช ื”ืฉืคืขื” ื’ื‘ื•ื”ื”.

Craft CMS ื‘ื ื•ื™ ืขืœ ื’ื‘ื™ Yii Framework , ืžืกื’ืจืช PHP ืžื”ื™ืจื” ื•ื—ื–ืงื” ืฉื ื•ืขื“ื” ืœืคื™ืชื•ื— ืืชืจื™ื ืžื•ื“ืจื ื™. Yii ืžืกืคืงืช ืืช ื”ืžื‘ื ื” ื•ื”ื›ืœื™ื ื”ืžืจื›ื–ื™ื™ื, ื‘ืขื•ื“ ืฉ-Craft CMS ืžืจื—ื™ื‘ ืื•ืชื• ื›ื“ื™ ืœืกืคืง ืžืขืจื›ืช ื ื™ื”ื•ืœ ืชื•ื›ืŸ ื’ืžื™ืฉื”.

ื™ืฆื™ืจืช ืœื•ื’ื•ืื™ื ืฉืœ CMS ื•-Yii Framework ื–ื” ืœืฆื“ ื–ื”, ื”ืงืฉื•ืจื™ื ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง CVE-2025-32432

ืื—ืช ื”ืชื›ื•ื ื•ืช ื”ืžืจื›ื–ื™ื•ืช ืฉืœ ืžืกื’ืจืช Yii ื”ื™ื ื”ื–ืจืงืช ื”ืชืœื•ื™ื•ืช (DI) ืฉืœื”. ื”ื–ืจืงืช ื”ืชืœื•ื™ื•ืช ื”ื™ื ืชื‘ื ื™ืช ืขื™ืฆื•ื‘ ื”ืžืกืคืงืช ืœืจื›ื™ื‘ื™ื ืืช ื”ืžืฉืื‘ื™ื ื”ื“ืจื•ืฉื™ื ืœื”ื, ื‘ืžืงื•ื ืœื“ืจื•ืฉ ืžื”ื ืœื‘ื ื•ืช ืืช ื”ืžืฉืื‘ื™ื ื”ืœืœื• ื‘ืขืฆืžื. ื”ื–ืจืงืช ื”ืชืœื•ื™ื•ืช ืฉืœ Yii ื’ืžื™ืฉื” ืžืื•ื“, ื•ืžืกื•ื’ืœืช ืœื‘ื ื•ืช ืื•ื‘ื™ื™ืงื˜ื™ื ืžื•ืจื›ื‘ื™ื ืžื›ืœืœื™ ืชืฆื•ืจื” ืคืฉื•ื˜ื™ื ื™ื—ืกื™ืช.

ืขื ื–ืืช, ื’ืžื™ืฉื•ืช ื–ื• ืžื’ื™ืขื” ืขื ืกื™ื›ื•ืŸ. ื‘ืžืงืจื” ืฉืœ CVE-2025-32432, ื ืขืฉื” ืฉื™ืžื•ืฉ ืœืจืขื” ื‘ืžื›ื•ืœืช ื”-DI ื‘ืฉื™ืœื•ื‘ ืขื ืงืœื˜ ืžืฉืชืžืฉ ืœื ืžื”ื™ืžืŸ, ืžื” ืฉื™ืฆืจ ื ืชื™ื‘ ืœื”ืจืฆืช ืงื•ื“ ืžืจื—ื•ืง. ืžืงืจื” ื–ื” ืžื“ื’ื™ื ืฉืืคื™ืœื• ืชื›ื•ื ื•ืช ืžืกื’ืจืช ื‘ื˜ื•ื—ื•ืช ื•ื—ื–ืงื•ืช ืขืœื•ืœื•ืช ืœื”ืคื•ืš ืœืžืกื•ื›ื ื•ืช ืื ื”ืŸ ืžืฉื•ืœื‘ื•ืช ืœืœื ื”ื‘ื ื” ืžืœืื” ืฉืœ ื”ืฉืœื›ื•ืช ื”ืื‘ื˜ื—ื” ืฉืœื”ืŸ.

ืฆืœื™ืœื” ืžืขืžื™ืงื” ืœืชื•ืš CVE-2025-32432

Craft CMS ื›ื•ืœืœ ืชื›ื•ื ื” ื‘ืฉื Image Transforms , ืฉื ื•ืขื“ื” ืœื™ื™ืขืœ ืืช ื”ื‘ื™ืฆื•ืขื™ื ืขืœ ื™ื“ื™ ื™ืฆื™ืจืช ืชืžื•ื ื•ืช ื‘ื’ื•ื“ืœ ืฉื•ื ื” ื™ืฉื™ืจื•ืช ื‘ืฉืจืช. ื‘ืžืงื•ื ืœืกืคืง ืชืžื•ื ื” ื’ื“ื•ืœื” ืฉืœ 4.5 ืžื’ื”-ื‘ื™ื™ื˜ ืœื”ืฆื’ื” ื›ืชืžื•ื ื” ืžืžื•ื–ืขืจืช ืฉืœ 300ร—300, Craft CMS ื™ื•ืฆืจ ื•ืžื’ื™ืฉ ืื•ื˜ื•ืžื˜ื™ืช ื’ืจืกื” ืงื˜ื ื” ื™ื•ืชืจ ื•ืžื•ืชืืžืช. ื’ื™ืฉื” ื–ื• ืžืคื—ื™ืชื” ืืช ื ื™ืฆื•ืœ ืจื•ื—ื‘ ื”ืคืก ื•ืžืฉืคืจืช ืžืฉืžืขื•ืชื™ืช ืืช ืžื”ื™ืจื•ืช ื˜ืขื™ื ืช ื”ืขืžื•ื“.

ื›ื“ื™ ืœื”ืคื•ืš ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื–ื• ืœื–ืžื™ื ื” ื‘ืื•ืคืŸ ื ืจื—ื‘, Craft CMS ื—ื•ืฉืฃ ืืช ื ืงื•ื“ืช ื”ืงืฆื” actions/assets/generate-transform ืœืœื ืฆื•ืจืš ื‘ืื™ืžื•ืช. ืืžื ื ื–ื” ืžื‘ื˜ื™ื— ืฉืžืฉืชืžืฉื™ื ืžืื•ืžืชื™ื ื•ืื ื•ื ื™ืžื™ื™ื ื›ืื—ื“ ื™ื•ื›ืœื• ืœื™ื”ื ื•ืช ืžืชืžื•ื ื•ืช ืื•ืคื˜ื™ืžืœื™ื•ืช, ืืš ื”ื•ื ื’ื ืžืฆื™ื’ ืžืฉื˜ื— ืชืงื™ืคื” ื ื’ื™ืฉ ืœืฆื™ื‘ื•ืจ ืฉื‘ื• ื›ืœ ืื—ื“ ื™ื›ื•ืœ ืœืกืคืง ืงืœื˜ ืžืขื•ืฆื‘ ืœืืคืœื™ืงืฆื™ื”.

ืงื˜ืข ืงื•ื“ ืž-Craft CMS AssetsController ื”ืžืฆื™ื’ ืืช ืœื•ื’ื™ืงืช allowAnonymous ื”ืจืœื•ื•ื ื˜ื™ืช ืœืคื’ื™ืขื•ืช CVE-2025-32432

ื‘ืืžืฆืขื•ืช ื ื™ืชื•ื— ืžืคื•ืจื˜ ืฉืœ ืชื”ืœื™ืš ืขื‘ื•ื“ื” ื–ื”, ืขืžื™ืชื™ื ื• ื–ื™ื”ื• ื›ื™ ื”ืžืชื•ื“ื” AssetsController::actionGenerateTransform ืžื•ืคืขืœืช ื‘ื›ืœ ืคืขื ืฉื ืฉืœื—ืช ื‘ืงืฉืช POST ืœื ืงื•ื“ืช ื”ืงืฆื” ื”ื—ืฉื•ืคื”. ืคื•ื ืงืฆื™ื” ื–ื• ืžืื—ื–ืจืช ืืช ืคืจืžื˜ืจ ื”-handle ื™ืฉื™ืจื•ืช ืžื’ื•ืฃ ื”ื‘ืงืฉื” ื•ืžืขื‘ื™ืจื” ืื•ืชื• ื‘ืžื•ืจื“ ื”ื–ืจื ืœืขื™ื‘ื•ื“ ื ื•ืกืฃ ื‘ืฉืœื‘ ื”ื‘ื.

ืฆื™ืœื•ื ืžืกืš ืฉืœ ืงื•ื“ PHP ืฉืœ Craft CMS ื”ืงืฉื•ืจ ืœื ื™ืชื•ื— ืคื’ื™ืขื•ื™ื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง CVE-2025-32432

ื‘ืฉืœื‘ ื”ื‘ื, ื ืงืจืืช ื”ืžืชื•ื“ื” ImageTransforms::normalizeTransform() . ืžืชื•ื“ื” ื–ื• ืœื•ืงื—ืช ืืช ืคืจืžื˜ืจ ื”-handle ืฉืกื•ืคืง ืขืœ ื™ื“ื™ ื”ืžืฉืชืžืฉ ื•ืžืžื™ืจื” ืื•ืชื• ืœืื•ื‘ื™ื™ืงื˜ ImageTransform . ืžื›ื™ื•ื•ืŸ ืฉื”ืื•ื‘ื™ื™ืงื˜ ื ื•ืฆืจ ื™ืฉื™ืจื•ืช ืžืงืœื˜ ืœื ืžื”ื™ืžืŸ, ื–ื” ืžื™ื™ืฆื’ ื ืงื•ื“ืช ืกื™ื›ื•ืŸ ืงืจื™ื˜ื™ืช ื‘ื–ืจื™ืžืช ื”ื‘ื™ืฆื•ืข.

ืงื˜ืข ืงื•ื“ PHP ืž-Craft CMS ื”ืงืฉื•ืจ ืœื ื™ืชื•ื— ืคื’ื™ืขื•ื™ื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง CVE-2025-32432

ื‘ืžื”ืœืš ืชื”ืœื™ืš ื–ื”, ื›ืœ ื–ื•ื’ื•ืช ื”ืžืคืชื—-ืขืจืš ืžื”ืžืขืจืš $transform ื”ื ืฉืœื˜ ืขืœ ื™ื“ื™ ื”ืžืฉืชืžืฉ (ืฉืžืงื•ืจื• ื‘ืคืจืžื˜ืจ handle) ืžืžื•ื–ื’ื™ื ืœืžืขืจืš ืชืฆื•ืจื”. ืœืื—ืจ ืžื›ืŸ, ื”ืžืชื•ื“ื” normalizeTransform ืžืขื‘ื™ืจื” ืžืขืจืš ื–ื” ืœ- Craft::createObject() , ื”ืื—ืจืื™ืช ืขืœ ื™ืฆื™ืจืช ืื•ื‘ื™ื™ืงื˜ ImageTransform ื—ื“ืฉ.

ืงื˜ืข ืงื•ื“ ื”ืžืฆื™ื’ ืืช ืœื•ื’ื™ืงืช Craft CMS ื”ืจืœื•ื•ื ื˜ื™ืช ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง CVE-2025-32432

ื”ืคื’ื™ืขื•ืช ื ื•ื‘ืขืช ืžื”ืื•ืคืŸ ืฉื‘ื• Craft::createObject() (ืขื•ื˜ืฃ ืืช Yii::createObject() ืฉืœ Yii ) ืžืขื‘ื“ ืžืขืจื›ื™ ืชืฆื•ืจื”. ืžื›ื™ื•ื•ืŸ ืฉืžื ื’ื ื•ืŸ ื–ื” ืžืฉืชืžืฉ ื‘ืžื›ื•ืœืช DI ื›ื“ื™ ืœื™ืฆื•ืจ ืžื•ืคืขื™ื ื•ืœืงื‘ื•ืข ืชืฆื•ืจื” ืฉืœ ืื•ื‘ื™ื™ืงื˜ื™ื ื™ืฉื™ืจื•ืช ืžื”ืžืขืจืš ื”ืœื ืžืื•ืžืช, ืชื•ืงืคื™ื ืขืœื•ืœื™ื ืœื”ืฉื™ื’ ืฉืœื™ื˜ื” ืขืœ ืชื”ืœื™ืš ื‘ื ื™ื™ืช ื”ืื•ื‘ื™ื™ืงื˜ื™ื.

ืงื•ื“ PHP ืžื•ื“ื’ืฉ ื”ืžืฆื™ื’ ืืช ื”ืคื•ื ืงืฆื™ื” createObject ื”ืจืœื•ื•ื ื˜ื™ืช ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ื‘-CVE-2025-32432 ื‘-Cramt CMS

ื›ืืฉืจ ืžื•ืขื‘ืจ ืžื˜ืขืŸ ื–ื“ื•ื ื™, ื‘ื ืื™ ื”ืื•ื‘ื™ื™ืงื˜ (ืฉื”ื•ืขื‘ืจ ื‘ื™ืจื•ืฉื” ืžืžื—ืœืงืช Model ) ืžืคืขื™ืœ ืืช ื”ืžืชื•ื“ื” App::configure() .

ืงื•ื“ PHP ืžื•ื“ื’ืฉ ื”ืžืฆื™ื’ ืืช ืœื•ื’ื™ืงืช ื”ื‘ื ืื™ ืฉืœ Craft CMS ื”ืงืฉื•ืจื” ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง CVE-2025-32432

ืฉื™ื˜ื” ื–ื• ืžื‘ืฆืขืช ืื™ื˜ืจืฆื™ื•ืช ืขืœ ื›ืœ ืžืืคื™ื™ืŸ ื‘ืžืขืจืš ื”ื ืฉืœื˜ ืขืœ ื™ื“ื™ ื”ืชื•ืงืฃ ื•ืžืงืฆื” ืื•ืชื ืœืื•ื‘ื™ื™ืงื˜ ื”ื—ื“ืฉ.

ืงื˜ืข ืงื•ื“ PHP ื”ืžืฆื™ื’ ืคื•ื ืงืฆื™ื™ืช configure, ื”ืจืœื•ื•ื ื˜ื™ืช ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ื‘-Craft CMS ืฉืœ CVE-2025-32432

When App::configure() assigns properties from the attacker-controlled configuration array, most keys are mapped directly onto the object. However, if a key begins with the prefix as, the assignment is routed through Component::__set, Yiiโ€™s magic setter. This method interprets as <name> as an instruction to attach a behavior (mixin) to the object.

ื ื™ืชืŸ ืœื™ืฆื•ืจ ืžื˜ืขืŸ ื–ื“ื•ื ื™ ืื—ื“ ื›ื–ื” ื›ื“ื™ ืœื ืฆืœ ืืช ื”ืื•ืคืŸ ืฉื‘ื• Component::__set ืžืขื‘ื“ ืžืืคื™ื™ื ื™ื ืขื ืงื™ื“ื•ืžืช as , ื›ื’ื•ืŸ exploit :

ืฆื™ืœื•ื ืžืกืš ืฉืœ ืงื•ื“ ื”ืžืฆื™ื’ ืžื˜ืขืŸ ื ื™ืฆื•ืœ ืขื‘ื•ืจ ืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ Craft CMS, CVE-2025-32432

ืžื”ื ื™ืชื•ื— ืฉืœื ื•, ื”ืžื™ืžื•ืฉ ืฉืœ Component::__set ื›ื•ืœืœ ืืžืฆืขื™ ื”ื’ื ื”: ื›ืืฉืจ ื”ืชื ื”ื’ื•ืช ืžืฆื•ืจืคืช ื“ืจืš ืžืืคื™ื™ืŸ ื›ื–ื”, ื”ืžืกื’ืจืช ืžืืžืชืช ืฉื”ืžื—ืœืงื” ืฉืฆื•ื™ื ื” ื‘ืžืขืจืš ื”ืชืฆื•ืจื” ื”ื™ื ืชืช-ืžื—ืœืงื” ืชืงืคื” ืฉืœ yii\base\Behavior . ื‘ื“ื™ืงื” ื–ื• ื ื•ืขื“ื” ืœืžื ื•ืข ืฆื™ืจื•ืฃ ืžื—ืœืงื•ืช ืฉืจื™ืจื•ืชื™ื•ืช ื™ืฉื™ืจื•ืช ืœืจื›ื™ื‘ื™ื.

ืงื•ื“ PHP ืžื•ื“ื’ืฉ ืž-Craft CMS ื”ืžืฆื™ื’ ืœื•ื’ื™ืงื” ื”ืžืงื•ืฉืจืช ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง CVE-2025-32432

ืขื ื–ืืช, ืืžืฆืขื™ ื”ื’ื ื” ื–ื” ืื™ื ื• ื™ืขื™ืœ ื›ืคื™ ืฉื ืจืื”. ื”ื—ื•ืœืฉื” ื ื•ื‘ืขืช ืžื”ืื•ืคืŸ ืฉื‘ื• Yii::createObject ืžื˜ืคืœ ื‘ืžืขืจื›ื™ ืชืฆื•ืจื”.

ื‘ืขืช ื™ืฆื™ืจืช ืžื•ืคืข ืฉืœ ืื•ื‘ื™ื™ืงื˜, Yii::createObject ื ื•ืชืŸ ืขื“ื™ืคื•ืช ืœืคืจืžื˜ืจ ื”ืžื™ื•ื—ื“ __class . ืื ืžืคืชื— ื–ื” ืงื™ื™ื, ืขืจื›ื• ืžืฉืžืฉ ื›ืžื—ืœืงืช ื”ื™ืขื“ ืœื™ืฆื™ืจืช ื”ืžื•ืคืข, ื•ืžืคืชื— ื”ืžื—ืœืงื” ื”ืกื˜ื ื“ืจื˜ื™ ื‘ืžืขืจืš ื”ืชืฆื•ืจื” ืžืชืขืœื.

ืงื˜ืข ืงื•ื“ PHP ื”ืžืฆื™ื’ ืœื•ื’ื™ืงืช ื™ืฆื™ืจืช ืื•ื‘ื™ื™ืงื˜ื™ื ื”ืงืฉื•ืจื” ืœืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ื‘-CVE-2025-32432 ื‘-Cramt CMS

ื”ืชื•ืงืฃ ื™ื›ื•ืœ ืœื™ืฆื•ืจ ืžื˜ืขืŸ ืขื‘ื•ืจ ื”ืชื ื”ื’ื•ืช ื”ื ื™ืฆื•ืœ ื”ื›ื•ืœืœ ืฉื ื™ ืžืคืชื—ื•ืช:

  1. 'class' => '\craft\behaviors\FieldLayoutBehavior' - ืžื—ืœืงื” ืœื’ื™ื˜ื™ืžื™ืช ืฉืžืจื—ื™ื‘ื” ืืช yii\base\Behavior. ืขืจืš ื–ื” ืงื™ื™ื ืืš ื•ืจืง ื›ื“ื™ ืœืกืคืง ืืช ื‘ื“ื™ืงืช is_subclass_of ื‘-Component::__set, ืžื” ืฉืžืืคืฉืจ ืœื‘ื™ืฆื•ืข ืœื”ืžืฉื™ืš ืžื‘ืœื™ ืœื’ืจื•ื ืœืฉื’ื™ืื”.
  2. '__class' => '\yii\rbac\PhpManager' - ื”ืžื˜ืจื” ื‘ืคื•ืขืœ ืฉืœ ื”ืชื•ืงืฃ. ื–ื•ื”ื™ ืžื—ืœืงืช ื”"ื’ืื“ื’'ื˜" ืฉื”ื ืจื•ืฆื™ื ืœื™ืฆื•ืจ.

ื›ืืฉืจ ื”ืงื•ื“ ืžื‘ื•ืฆืข, Component::__set ืขื•ื‘ืจ ืืช ื‘ื“ื™ืงืช ื”ืื‘ื˜ื—ื” ืžื›ื™ื•ื•ืŸ ืฉื”ื•ื ื‘ื•ื“ืง ืจืง ืืช ืžืคืชื— ื”ืžื—ืœืงื”. ืขื ื–ืืช, ื›ืืฉืจ ื”-framework ืงื•ืจื ืžืื•ื—ืจ ื™ื•ืชืจ ืœ-Yii::createObject ื›ื“ื™ ืœืฆืจืฃ ืืช ื”ื”ืชื ื”ื’ื•ืช, ื”ื•ื ื ื•ืชืŸ ืขื“ื™ืคื•ืช ืœ-__class, ื•ื›ืชื•ืฆืื” ืžื›ืš ื ื•ืฆืจ ืื•ื‘ื™ื™ืงื˜ \yii\rbac\PhpManager ืฉื‘ื—ืจ ื”ืชื•ืงืฃ ื‘ืžืงื•ื ื–ืืช.

ื”ืฉื™ืžื•ืฉ ื‘- \yii\rbac\PhpManager ื”ื•ื ืžื›ื•ื•ืŸ. ื™ืฆื™ืจืช ืื•ื‘ื™ื™ืงื˜ ื‘ืœื‘ื“ ืื™ื ื” ืžืกืคื™ืงื” ืœื ื™ืฆื•ืœ; ื”ืฉื’ืช RCE ื“ื•ืจืฉืช ืžื—ืœืงืช ื’ืื“ื’'ื˜ ืขื ืชื•ืคืขื•ืช ืœื•ื•ืื™ ืฉื ื™ืชืŸ ืœื”ืคื•ืš ืœื ืฉืง. PhpManager ื”ื•ื ืžื˜ืจื” ื ืคื•ืฆื” ื‘ื”ืชืงืคื•ืช POI (PHP Object Injection) ื‘ื’ืœืœ ื–ืจื™ืžืช ื”ืืชื—ื•ืœ ืฉืœื•. ืœืื—ืจ ื”ื”ืคืขืœื”, ื”ืžืชื•ื“ื” init() ืงื•ืจืืช ืœ- load() , ืืฉืจ ืœืื—ืจ ืžื›ืŸ ืžืคืขื™ืœื” ืืช loadFromFile($this->itemFile) . ืขื ืฉืœื™ื˜ื” ืขืœ $this->itemFile , ืชื•ืงืฃ ื™ื›ื•ืœ ืœืืœืฅ ืืช ื”ืืคืœื™ืงืฆื™ื” ืœื˜ืขื•ืŸ ืงื•ื‘ืฅ ื–ื“ื•ื ื™, ื•ืœื”ืคื•ืš ื™ืฆื™ืจืช ืื•ื‘ื™ื™ืงื˜ ืœื”ืจืฆืช ืงื•ื“.

ื–ืจื™ืžืช ืงื•ื“ PHP ืžื•ื“ื’ืฉืช ื”ืžืฆื™ื’ื” ืืช ืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ CVE-2025-32432 ื‘-Craft CMS ืขื ื”ื›ืœืœืช ืงื‘ืฆื™ื.

ื”ืกื›ื ื” ื˜ืžื•ื ื” ื‘ืžืชื•ื“ื” loadFromFile. ื‘-PHP, ืงื•ื“ requirement ืžื‘ืฆืข ืืช ืงื•ื‘ืฅ ื”ื™ืขื“ ื›ืงื•ื“, ื›ืš ืฉืื ืชื•ืงืฃ ืฉื•ืœื˜ ื‘ื ืชื™ื‘ ื”ืงื•ื‘ืฅ, ื”ื•ื ื™ื›ื•ืœ ืœื”ืคืขื™ืœ ื‘ื™ืฆื•ืข ืงื•ื“ ืฉืจื™ืจื•ืชื™.

ื›ื“ื™ ืœื”ืฆื™ื‘ ืงื•ื“ ื–ื“ื•ื ื™ ื‘ืฉืจืช, ื”ืชื•ืงืฃ ืžื ืฆืœ ืงื‘ืฆื™ session ืฉืœ PHP . ืขืœ ื™ื“ื™ ื”ื–ืจืงืช PHP ืœืคืจืžื˜ืจ ื‘ืงืฉื”, Craft CMS ืฉื•ืžืจ ืืช ื”ืžื˜ืขืŸ ืœืงื•ื‘ืฅ session ื‘ืžื”ืœืš ืชื”ืœื™ืš ื”ื”ืคื ื™ื”. ืžืื•ื—ืจ ื™ื•ืชืจ, ื›ืืฉืจ PhpManager ื˜ื•ืขืŸ ืงื•ื‘ืฅ ื–ื”, ื ื™ืชืŸ ื™ื”ื™ื” ืœื‘ืฆืข ืืช ืงื•ื“ ื”ืชื•ืงืฃ.

ืชืจืฉื™ื ื–ืจื™ืžื” ื”ืžืฆื™ื’ ืืช ืชื”ืœื™ืš ื ื™ืฆื•ืœ ื”ืคื’ื™ืขื•ืช ืฉืœ ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ CVE-2025-32432 Craft CMS

ืฉืจืฉืจืช ื”ื”ืชืงืคื” ื”ืžืœืื” ืคื•ืขืœืช ื‘ืฉืœื•ืฉื” ืฉืœื‘ื™ื. ืจืืฉื™ืช, ื”ืชื•ืงืฃ ืฉื•ืชืœ PHP ื–ื“ื•ื ื™ ืขืœ ื™ื“ื™ ืฉืœื™ื—ืช ื›ืชื•ื‘ืช URL ืžืขื•ืฆื‘ืช, ืื•ืชื” Craft CMS ืฉื•ืžืจ ื‘ืงื•ื‘ืฅ session. ืœืื—ืจ ืžื›ืŸ, ื”ื•ื ืžื ืฆืœ ืืช ืขืงื™ืคืช __class ื‘ื ืงื•ื“ืช ื”ืงืฆื” ืฉืœ transform image ื›ื“ื™ ืœื˜ืขื•ืŸ ืืช ื’ืื“ื’'ื˜ PhpManager ื•ืœื›ื•ื•ืŸ ืื•ืชื• ืœืขื‘ืจ ืงื•ื‘ืฅ ื”-session ื”ืžื•ืจืขืœ. ืœื‘ืกื•ืฃ, ื›ืืฉืจ PhpManager ื˜ื•ืขืŸ ืืช ื”ืงื•ื‘ืฅ, ื”ืžื˜ืขืŸ ืฉืœ ื”ืชื•ืงืฃ ืžื‘ื•ืฆืข, ื•ืžืขื ื™ืง RCE ื•ืฉืœื™ื˜ื” ืžืœืื” ื‘ืฉืจืช - ืœืขืชื™ื ืงืจื•ื‘ื•ืช ื‘ืืžืฆืขื•ืช webshell ืื• reverse shell.

ืชืจืฉื™ื ื–ืจื™ืžื” ื”ืžืฆื™ื’ ืืช ืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ CVE-2025-32432 ื‘-Craft CMS ื‘ืืžืฆืขื•ืช JSON ื•ืฆืขื“ื™ ื”ืชืงืคื”
ืคืœื˜ ื”ื˜ืจืžื™ื ืœ ื”ืžืฆื™ื’ ืฉืœื‘ื™ ื ื™ืฆื•ืœ ืขื‘ื•ืจ ืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ CVE-2025-32432 Craft CMS
ื˜ืจืžื™ื ืœ ื”ืžืฆื™ื’ ื ื™ืฆื•ืœ ืœืจืขื” ืฉืœ ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ CVE-2025-32432 ืฉืœ Craft CMS ืขื ื’ื™ืฉืช ืžืขื˜ืคืช ื›ืžืฉืชืžืฉ www-data

ื”ืคื—ืชื” ื•ืชื™ืงื•ืŸ

ื›ื“ื™ ืœืžืชืŸ ื‘ื™ืขื™ืœื•ืช ืืช ื”ืกื™ื›ื•ื ื™ื ื”ืงืฉื•ืจื™ื ืœ-CVE-2025-32432, ืืจื’ื•ื ื™ื ื–ืงื•ืงื™ื ืœื ืจืื•ืช ื•ืฉืœื™ื˜ื” ืขืœ ืจื›ื™ื‘ื™ ื”ืงื•ื“ ื”ืคืชื•ื— ืฉืœื”ื. ืœืœื ืžืœืื™ ื‘ืจื•ืจ ืฉืœ ืจื›ื™ื‘ื™ื, ืชื™ืงื•ืŸ ืงื•ื“ ื”ื•ืคืš ืœื ื™ื—ื•ืฉื™ื.

OPSWAT SBOM , ื˜ื›ื ื•ืœื•ื’ื™ื” ืงื ื™ื™ื ื™ืช ื‘ืคืœื˜ืคื•ืจืžืช MetaDefenderยฎ , ืขื•ื ื” ืขืœ ืฆื•ืจืš ื–ื” ืขืœ ื™ื“ื™ ืžืชืŸ ืจืฉื™ืžื” ืฉืœ ื›ืœ ืจื›ื™ื‘ื™ ื”ืชื•ื›ื ื”, ื”ืกืคืจื™ื•ืช, ืžื›ื•ืœื•ืช Docker ื•ื”ืชืœื•ื™ื•ืช ื”ื ืžืฆืื•ืช ื‘ืฉื™ืžื•ืฉ. ื”ื™ื ืžืืคืฉืจืช ืœืืจื’ื•ื ื™ื ืœืขืงื•ื‘, ืœืื‘ื˜ื— ื•ืœืขื“ื›ืŸ ืืช ื”ืจื›ื™ื‘ื™ื ืฉืœื”ื ื‘ืื•ืคืŸ ื™ื–ื•ื.

ืžืžืฉืง ืžืฉืชืžืฉ ืฉืœ ืกืจื™ืงืช ืื‘ื˜ื—ื” ื”ืžืฆื™ื’ ืืจื›ื™ื•ืŸ Craft CMS ื—ืกื•ื ืขื ืคื’ื™ืขื•ื™ื•ืช ืงืจื™ื˜ื™ื•ืช ืœืฆื•ืจืš ื”ืคื—ืชืช CVE-2025-32432
ืœื•ื— ื‘ืงืจื” ืœืื‘ื˜ื—ื” ื”ืžืฆื™ื’ ืคืจื˜ื™ื ืขืœ ืคื’ื™ืขื•ืช ื‘ื™ืฆื•ืข ืงื•ื“ ืžืจื—ื•ืง ืฉืœ Craft CMS CVE-2025-32432 ื•ืชื™ืงื•ืŸ

ื‘ื“ื•ื’ืžื” ืœืขื™ืœ, ื˜ื›ื ื•ืœื•ื’ื™ื™ืช SBOM ื‘ MetaDefender Coreโ„ขโ€Ž ืกืจืง ืืช ื—ื‘ื™ืœืช nginx-ingress-controller ืฉื”ื›ื™ืœื” ืืช ื”ืคื’ื™ืขื•ืช CVE-2025-32432. ื”ืžืขืจื›ืช ืกื™ืžื ื” ืื•ื˜ื•ืžื˜ื™ืช ืืช ื”ื‘ืขื™ื” ื›ืงืจื™ื˜ื™ืช ื•ืกื™ืคืงื” ื”ื ื—ื™ื•ืช ืœื’ื‘ื™ ื’ืจืกืื•ืช ืžืชื•ืงื ื•ืช ื–ืžื™ื ื•ืช, ืžื” ืฉืืคืฉืจ ืœืฆื•ื•ืชื™ื ืœืชืขื“ืฃ ื•ืœืชืงืŸ ื‘ืžื”ื™ืจื•ืช ืืช ื”ืคื’ื™ืขื•ืช ืœืคื ื™ ืฉื ื™ืชืŸ ื™ื”ื™ื” ืœื ืฆืœ ืื•ืชื”.

OPSWAT SBOM ื–ืžื™ืŸ ื‘- MetaDefender Core ื•ื‘- MetaDefender Software Supply Chainโ„ข , ื•ืžืืคืฉืจ ืœืฆื•ื•ืชื™ ืื‘ื˜ื—ื” ืœื–ื”ื•ืช ื•ืœืคืขื•ืœ ืขืœ ืคื’ื™ืขื•ื™ื•ืช ืžื”ืจ ื™ื•ืชืจ . OPSWAT SBOM, ืฆื•ื•ืชื™ ืื‘ื˜ื—ื” ื™ื›ื•ืœื™ื:

  • ืื™ืชื•ืจ ืžื”ื™ืจ ืฉืœ ืจื›ื™ื‘ื™ื ืคื’ื™ืขื™ื - ื–ื”ื” ื‘ืื•ืคืŸ ืžื™ื™ื“ื™ ืืช ืจื›ื™ื‘ื™ ื”ืงื•ื“ ื”ืคืชื•ื— ืฉื ืคื’ืขื• ืžื”ืชืงืคื•ืช ื‘ื™ื˜ื•ืœ ืกืจื™ืืœื™ื–ืฆื™ื”. ื–ื” ืžื‘ื˜ื™ื— ืคืขื•ืœื” ืžื”ื™ืจื” ื‘ืชื™ืงื•ืŸ ืื• ื”ื—ืœืคืช ื”ืกืคืจื™ื•ืช ื”ืคื’ื™ืขื•ืช.โ€ฏ
  • ื•ื“ื ืชื™ืงื•ืŸ ื•ืขื“ื›ื•ื ื™ื ืคืจื•ืืงื˜ื™ื‘ื™ื™ื - ื ื™ื˜ื•ืจ ืจืฆื™ืฃ ืฉืœ ืจื›ื™ื‘ื™ ืงื•ื“ ืคืชื•ื— ื‘ืืžืฆืขื•ืช OPSWAT SBOM ื›ื“ื™ ืœื”ืงื“ื™ื ืืช ืชื”ืœื™ื›ื™ ื‘ื™ื˜ื•ืœ ื”ืกื™ื“ื•ืจื™ื ื‘ื ื•ื’ืข ืœืคื’ื™ืขื•ื™ื•ืช. OPSWAT SBOM ื™ื›ื•ืœ ืœื–ื”ื•ืช ืจื›ื™ื‘ื™ื ืžื™ื•ืฉื ื™ื ืื• ืœื ืžืื•ื‘ื˜ื—ื™ื, ืžื” ืฉืžืืคืฉืจ ืขื“ื›ื•ื ื™ื ื‘ื–ืžืŸ ื•ื”ืคื—ืชืช ื”ื—ืฉื™ืคื” ืœื”ืชืงืคื•ืช.โ€ฏ
  • ืœืฉืžื•ืจ ืขืœ ืชืื™ืžื•ืช ื•ื“ื™ื•ื•ื— โ€“ OPSWAT SBOM ืžืกื™ื™ืขืช ืœืืจื’ื•ื ื™ื ืœืขืžื•ื“ ื‘ื“ืจื™ืฉื•ืช ื”ืชืื™ืžื•ืช, ื›ืืฉืจ ืžืกื’ืจื•ืช ืจื’ื•ืœื˜ื•ืจื™ื•ืช ืžื—ื™ื™ื‘ื•ืช ื™ื•ืชืจ ื•ื™ื•ืชืจ ืฉืงื™ืคื•ืช ื‘ืฉืจืฉืจืื•ืช ืืกืคืงื” โ€‹โ€‹ืฉืœ ืชื•ื›ื ื”.

ืžื•ื›ื ื™ื ืœื—ื–ืง ืืช ืฉืจืฉืจืช ื”ืืกืคืงื” โ€‹โ€‹ืฉืœ ื”ืชื•ื›ื ื” ืฉืœื›ื ืžืคื ื™ ืื™ื•ืžื™ื ืžืชืคืชื—ื™ื?

ืชื’ื™ื•ืช:

ื”ื™ืฉืืจ ืžืขื•ื“ื›ืŸ ืขื OPSWAT !

ื”ื™ืจืฉืžื• ืขื•ื“ ื”ื™ื•ื ื›ื“ื™ ืœืงื‘ืœ ืืช ื”ืขื“ื›ื•ื ื™ื ื”ืื—ืจื•ื ื™ื ืฉืœ ื”ื—ื‘ืจื”, ืกื™ืคื•ืจื™ื, ืžื™ื“ืข ืขืœ ืื™ืจื•ืขื™ื ื•ืขื•ื“.