
Proof-of-Concept- und Lab-Paket für CVE-2026-48356, einen unauthentifizierten uneingeschränkten Datei-Upload in den REST-Custom-Options des Gastwarenkorb-Warenkorbs von Magento Open Source.
abraxaslabs.tech · github.com/abraxas · @abraxas_null · CVE-2026-48356
Magento Open Source 2.4.8-p5 — Adobe
Adobe Commerce ist von einer Schwachstelle betroffen, die das uneingeschränkte Hochladen von Dateien mit gefährlichem Typ ermöglicht und zur Ausführung beliebigen Codes im Kontext des aktuellen Benutzers führen könnte.
| CVE | CVE-2026-48356 · CVE.org |
| CWE | CWE-434 |
| CVSS | Kritisch: 9.3 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N |
| Produkt | Magento Open Source |
| Betroffen | alle Versionen bis einschließlich 2.4.8-p5 |
| Gepatcht | 2.4.8-2026-jul / APSB26-73 und später |
| Auth | nicht authentifiziert (siehe Source Map) |
| Lizenz | GNU Affero GPL v3.0 |
| Lab | nur 127.0.0.1 · Vendor-/Client-Disclosure-Paket, kein Scanner |
ImageContentValidator erlaubt jeden Dateinamen ohne verbotene Satzzeichen. ImageProcessor::getFileName behält die Endung des Aufrufers bei. Keine option_id-/option-type-Prüfung bei guest cart file_info. Hotfix APSB26-73 / 2.4.8-2026-jul.
POST/rest/default/V1/guest-carts/{cartId}/itemsPOST /rest/default/V1/guest-carts gibt cart id zurückPOST /rest/default/V1/guest-carts/{id}/items mit custom_options file_info GIF89a + <?= witness ?> benannt GHSA48356-WITNESS.phpMagento\Framework\Api\ImageContentValidator::isValid nur getimagesizefromstringMagento\Catalog\Model\Webapi\Product\Option\Type\File\Processor schreibt pub/media/custom_options/quote/.../GHSA48356-WITNESS.phpGuest-Cart-add-item-HTTP-JSON enthält GHSA48356-WITNESS.php
Zuerst dies tun: Aktualisieren Sie Magento Open Source auf 2.4.8-2026-jul / APSB26-73 oder neuer.
Nach dem Upgrade überprüfen
CVE-2026-48356-Abraxas-Labs.py erneut gegen den gepatchten Build aus: der zugeordnete Witness darf nicht erscheinen.Wenn Sie nicht sofort aktualisieren können
Zielen Sie nur auf http://127.0.0.1:8088 (oder das von Ihnen gebundene Loopback). Richten Sie dieses Skript nicht auf das Internet.
python3 CVE-2026-48356-Abraxas-Labs.py
Erfolg ist der Witness oben im Response-Body. Ein generisches 200-HTML ist es nicht.
Loopback-Stack zur Reproduktion. Offizielle Images, sofern nicht ein Dockerfile in diesem Ordner aus dem Quellcode baut.
cd lab
docker compose up --force-recreate
Binden Sie den verwundbaren Produkt-Tree neben Compose ein, wenn die YAML ein lokales Verzeichnis mountet (Plugin-Zip / Source-Tag aus der Versionstabelle). Veröffentlichen Sie nichts außer 127.0.0.1.
# CVE-2026-48356 (PolyShell)
CWE: CWE-434
CVSS: Critical 9.3 (Adobe CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N). Sansec: unauthenticated REST upload.
## Description
Unauthenticated unrestricted file upload in Magento/Adobe Commerce guest-cart REST custom options. A GIF89a polyglot with a `.php` name bypasses `ImageContentValidator` and is written to `pub/media/custom_options/quote/`.
## Product
Magento Open Source 2.4.8-p5 (affected through 2.4.9 / 2.4.8-p5). Lab oracle is a witness filename in the REST body, not a shell.
Dieses Disclosure-Paket ist unter der GNU Affero General Public License v3.0 lizenziert. Siehe LICENSE.
Dieses Paket ist für den Vendor, den Site-Eigentümer und lizenzierte Labs. Das Skript kommuniziert mit 127.0.0.1. Die Verwendung gegen Systeme, die Ihnen nicht gehören, ist von Abraxas Labs nicht autorisiert. Keine Gewährleistung.