
On October 27, 2026, the US CISA added a vulnerability in Adobe Commerce and Magento Open Source (CVE-2026-48356) to its Known Exploited Vulnerabilities (KEV) catalog. The deadline for US federal agencies is November 10 (CISA). The security firm Sansec calls the flaw “PolyShell”.
The fix shipped on July 14. Yet Sansec reports seeing attacks from March, and Adobe’s advisory, the CVE record and Sansec’s report describe the flaw quite differently. This article separates what is firm from what each party infers.
It is for companies that run Adobe Commerce or Magento Open Source themselves. The information is current as of October 30, 2026. The Brotli flaw, added to KEV the same day, is covered separately.
2.4.8-2026-jul, so look for the “-2026-jul” ending. A version with a “-p” number such as 2.4.8-p5 is still listed as affected in Adobe’s table, even if it is the latest “-p”.| Date (2026) | Event | Source |
|---|---|---|
| Mar 16-17 | Sansec publishes PolyShell. It says it has seen attempts since the 16th, and that the fix exists only in the 2.4.9 development branch | Sansec |
| Mar 30 | Sansec reports 471 stores compromised in one hour | Sansec |
| May 12 | Sansec adds an update: 2.4.9 includes the fix, but 2.4.8 and earlier do not | Sansec |
| Jul 14 | Adobe publishes APSB26-73, fixing 14 vulnerabilities including CVE-2026-48356. Priority 2. It states “not aware of any exploits in the wild” | Adobe |
| Aug 11 | Adobe’s advisory is updated (what changed is not stated) | Adobe |
| Oct 24 | Sansec publishes a separate report: 953 stores with code planted in CMS blocks since July 2025 | Sansec |
| Oct 27 | CISA adds it to KEV. Federal deadline: November 10 | CISA |
| Oct 28 | The CVE record is updated | CVE record |
CISA’s stated reason is “evidence of active exploitation”, but it does not say who exploited what, where, or how often.
| Item | Adobe advisory (Jul 14) | CVE record (updated Oct 28) | Sansec (Mar 17) |
|---|---|---|---|
| Impact | Privilege escalation | Arbitrary code execution in the context of the current user | Unauthenticated placement of a file containing PHP; code execution if the server conditions allow |
| Authentication | Not required | Not required (CVSS PR:N) | Not required |
| Victim action | Required (CVSS UI:R) | Required, e.g. the victim visits a crafted URL | Not mentioned; the attacker sends requests straight to the API |
| CVSS | 9.6 (A:L) | 9.3 (A:N) | Not given |
| Entry point | Not stated | Not stated | Guest cart REST API (POST /V1/guest-carts/:cartId/items and others) |
(I built this table from the originals: Adobe, the CVE record and Sansec.)
Sansec assigns CVE-2026-48356 to this flaw. In what I read, neither Adobe’s advisory nor the CVE record uses the name PolyShell. I have not confirmed why the same flaw is described so differently. What matters in practice is not to lower the priority because of “victim action required”: the attack Sansec shows does not need one.
Some reports read as if “at least 953 stores were hit by attacks exploiting CVE-2026-48356” (for example, Security Affairs). Sansec’s original does not say that (Sansec, Oct 24).
Sansec also sells protection products and scanners. Its research is detailed and useful, but it is safest to read its numbers as estimates based on its own observations.
Adobe’s advisory lists these affected versions and fixed versions (Adobe).
| Product | Affected | Fixed |
|---|---|---|
| Adobe Commerce | 2.4.9, 2.4.8-p5 and earlier, 2.4.7-p10 and earlier, 2.4.6-p15 and earlier, 2.4.5-p17 and earlier, 2.4.4-p18 and earlier | 2.4.9-2026-jul, 2.4.8-2026-jul, 2.4.7-2026-jul, 2.4.6-2026-jul, 2.4.5-2026-jul, 2.4.4-2026-jul |
| Adobe Commerce B2B | 1.5.3, 1.5.2-p5 and earlier, 1.4.2-p10 and earlier, 1.3.4-p17 and earlier, 1.3.3-p18 and earlier | 1.5.3-2026-jul, 1.5.2-2026-jul, 1.4.2-2026-jul, 1.3.4-2026-jul, 1.3.3-2026-jul |
| Magento Open Source | 2.4.9, 2.4.8-p5 and earlier, 2.4.7-p10 and earlier, 2.4.6-p15 and earlier | 2.4.9-2026-jul, 2.4.8-2026-jul, 2.4.7-2026-jul, 2.4.6-2026-jul |
| Adobe Commerce Events | 1.6.0 to 1.20.0 | 1.21.0 |
Two cautions when reading it.
-2026-jul suffix the fix is not in. This is simply how Adobe’s table reads.2.4.9-2026-jul as the fix. I have not confirmed this discrepancy. Moving to the -2026-jul version of your line is safe under either account.A case where a team updated but was not fixed is in another article.
bin/magento --version
Compare it with the table above and move to a version with the -2026-jul suffix. For Magento Open Source 2.4.5 and earlier, Adobe’s advisory lists neither an affected nor a fixed version (no reason is given). If you are on that line, ask whoever maintains the shop, or Adobe, where you stand.
Sansec says any PHP file in the upload folder is a sign of compromise (Sansec). Here is an example check (my own example; adapt it to your environment).
find pub/media/custom_options -type f \( -name '*.php' -o -name '*.phtml' -o -name '*.phar' \)
find . -name 'accesson.php'
If there is a PHP-type file in pub/media/custom_options, treat the store as compromised.
In its October report, Sansec lists fpCode, se_referrer and localStorage.getItem as search terms (Sansec). Here is an example check (my own example).
SELECT block_id, identifier, update_time FROM cms_block
WHERE content LIKE '%fpCode%' OR content LIKE '%se_referrer%' OR content LIKE '%localStorage.getItem%';
SELECT page_id, identifier, update_time FROM cms_page
WHERE content LIKE '%fpCode%' OR content LIKE '%se_referrer%' OR content LIKE '%localStorage.getItem%';
SELECT username, email, created FROM admin_user;
Also look for admin accounts you do not recognize.
Sansec suggests making PHP not run in the upload folder (nginx: deny the folder before the PHP location block; Apache: php_flag engine 0 and Deny from all in .htaccess), and blocking at the API level with a WAF. Blocking access to the folder does not stop the upload itself. I have not tested these settings.
If you’d like help checking versions, updating, or checking for compromise on your online store, get in touch.
We are currently taking free consultations on security. Questions like "Is our site safe?" or "Where should we start checking?" are welcome.
