Content management and web applications

Magento, Adobe Commerce and Mage-OS email-template RCE: BlockStrap (CVE-2026-103849)

Magento email-template RCE check

CVE-2026-103849 ("BlockStrap") is an unauthenticated remote code execution flaw in the email template engine, rated CVSS 10.0 (CVSS 3.1). It is a second-pass directive injection: a directive hidden in a child email template is signed, passes the check, and is processed again by the parent template. Researchers found four attack paths within a day of disclosure and expect exploitation. None was confirmed in the sources used for this document.

CVE CVE-2026-103849
Severity 10.0 Critical (CVSS 3.1)
Authentication None
Affected Adobe Commerce 2.4.4 to 2.4.9, Adobe Commerce B2B 1.3.3 to 1.5.3, and Magento Open Source (the sources give 2.4.6 or 2.4.7 as the first affected line) to 2.4.9, in builds before APSB26-153. Mage-OS up to and including 3.5.0
Fixed Adobe's October 2026 releases (APSB26-153, 13 October 2026); Mage-OS 3.6.0 (14 October 2026)
Workaround Adobe documents none

What a version number can and cannot show

Adobe ships this fix as an isolated patch, and applying it does not change the version string, so a store on 2.4.8-p5 or 2.4.9 may or may not be fixed. The script therefore does not guess for Magento and Adobe Commerce: it tells you which patch to confirm. It gives a firm answer where the version can carry one:

Install How it is judged
Mage-OS below 3.6.0 (3.5.x included) Exposed
Mage-OS 3.6.0 or later Fixed
A Mage-OS pre-release of 3.6.0 (3.6.0-beta1, 3.6.0-rc2) Not judged as the release: it may not carry the fix. Warns, exit 1
A dated release string such as 2.4.9-2026-oct By the month: before October exposed, October or later fixed
Any other Magento or Adobe Commerce version Cannot confirm from the version: confirm in your patch tooling that the APSB26-153 fix is applied, or move to the October 2026 release

The distribution and version are read from composer.lock (the mage-os/product-community-edition, magento/product-enterprise-edition or magento/product-community-edition package), and from composer.json on a git checkout.

Quick start

curl -fLO https://raw.githubusercontent.com/PrivacySafe/security-patches/refs/heads/main/magento/magento-check.sh
less magento-check.sh
chmod +x magento-check.sh
./magento-check.sh check

By default it looks for bin/magento under /var/www /srv /home /opt. Pass directories to narrow it. Everything is read-only.

Command What it does
check (default) Finds installs, reads the distribution and version, and reports as above. Exit 0 nothing exposed, 1 exposed or unconfirmed
version Prints the script version

There is no hunt

No indicators of exploitation have been published for this flaw, so the script has none. A clean check shows that the version is fixed, not that the store was never attacked.

Update

Apply the APSB26-153 fix or move to the October 2026 release for your line, or to Mage-OS 3.6.0.

If a store was exposed

Review your email templates for directives you did not add. That suggestion is the project's, not Adobe's.

Sources

Before you run it

  • The fix. Apply Adobe's APSB26-153 fix or move to the October 2026 release for your line, or to Mage-OS 3.6.0. Adobe documents no workaround.
  • A version number cannot show this fix. Adobe ships it as an isolated patch that does not change the version string, so for Magento and Adobe Commerce the script tells you which patch to confirm. It gives a firm answer for Mage-OS and for a dated release string such as 2.4.9-2026-oct.
  • A Mage-OS pre-release is not the release. 3.6.0-beta1 and 3.6.0-rc2 are reported with a warning, not as fixed.
  • There is no hunt. No indicators of exploitation have been published for this flaw.
  • It also checks running docker and podman containers, unless you name a directory or set SCAN_CONTAINERS=0. The check finds installs inside running docker and podman containers by their marker file, copies only the files it reads into a private temporary directory, and judges them like a host install. A path shown as .../docker_NAME_PATH is the PATH inside the container NAME. It never runs anything in a container beyond find and a file copy, never copies .env or wp-config.php, never keeps a staged symlink, and is skipped when you name directories yourself.

The Security Patches software and this documentation are dedicated to the public domain under CC0 1.0 Universal. Other pages on privacysafe.app/docs are CC BY-SA 4.0 unless the page says otherwise.

Edit this page on Codeberg

The PrivacySafe Ecosystem

Shop at Ivy Cyber

Ivy Cyber offers PrivacySafe products and services in the USA and has partnerships with 3NSoft in Canada and Kuip Limited in the European Union. Enterprise services and consulting are available at ivycyber.com

PrivacySafe Foundation is a 501(c)(3) nonprofit public charity that supports the development of the PrivacySafe applications, along with the components they rely upon: 3NWeb protocols, filesystem, documentation, and reference implementations.

PrivacySafe Foundation

Donations to PrivacySafe Foundation support education, research, documentation, and public code. Purchases from Ivy Cyber support PrivacySafe products, services, hosting, and technical support. Together, we're building a better web.