CVE-2026-27180
Mjdm Majordomo
Raw vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XSummary
CVE-2026-27180 is a critical-severity Download of Code Without Integrity Check (CWE-494) vulnerability in Mjdm Majordomo. Its CVSS base score is 9.3 (Critical).
Operationally, exploitation aligns with the MITRE ATT&CK technique Supply Chain Compromise (T1195); ranked in the top 38% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
The strongest mitigations our analysis identified map to CM-14 (Signed Components) and SI-7 (Software, Firmware, and Information Integrity) — see the control section below for these in your framework.
Deeper analysis AI-assisted summary
Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.
CVE-2026-27180 is a critical unauthenticated remote code execution vulnerability in MajorDoMo (also known as Major Domestic Module), an open-source home automation platform. The issue stems from the saverestore module, which exposes its admin() method via the /objects/?module=saverestore endpoint without authentication. This occurs because the module reads the mode parameter directly from $_REQUEST using gr('mode') rather than the framework's $this->mode. Additionally, the auto_update_settings mode handler allows poisoning of the system update URL, enabling supply chain compromise. The vulnerability carries a CVSS v3.1 base score of 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) and is associated with CWE-494 (Download of Code Without Integrity Check). It was published on 2026-02-18.
An unauthenticated remote attacker can exploit this vulnerability with just two GET requests. First, the attacker poisons the update URL through the auto_update_settings handler. Second, they trigger the force_update handler, which calls autoUpdateSystem(). This method fetches an Atom feed from the attacker-controlled URL with only trivial validation, downloads a tarball using curl with TLS verification disabled (CURLOPT_SSL_VERIFYPEER set to FALSE), extracts it via exec('tar xzvf ...'), and copies all files to the document root using copyTree(). Successful exploitation allows deployment of arbitrary PHP files, such as webshells, granting full control over the affected MajorDoMo instance.
Advisories and patches for mitigation are detailed in referenced sources, including a GitHub pull request at https://github.com/sergejey/majordomo/pull/1177, a technical analysis at https://chocapikk.com/posts/2026/majordomo-revisited/, and a VulnCheck advisory at https://www.vulncheck.com/advisories/majordomo-supply-chain-remote-code-execution-via-update-url-poisoning. Security practitioners should review these for specific remediation steps, such as patching the saverestore module and securing update mechanisms.
OWASP Top 10 for Web (2025)
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-8370
Vulnerability Data
MajorDoMo (aka Major Domestic Module) is vulnerable to unauthenticated remote code execution through supply chain compromise via update URL poisoning. The saverestore module exposes its admin() method through the /objects/?module=saverestore endpoint without authentication because it uses gr('mode') (which reads directly…
more
from $_REQUEST) instead of the framework's $this->mode. An attacker can poison the system update URL via the auto_update_settings mode handler, then trigger the force_update handler to initiate the update chain. The autoUpdateSystem() method fetches an Atom feed from the attacker-controlled URL with trivial validation, downloads a tarball via curl with TLS verification disabled (CURLOPT_SSL_VERIFYPEER set to FALSE), extracts it using exec('tar xzvf ...'), and copies all extracted files to the document root using copyTree(). This allows an attacker to deploy arbitrary PHP files, including webshells, to the webroot with two GET requests.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise Techniques
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
—
—
- 9 hardening rules · 5 OS baselines
—
Mitigating Controls (NIST 800-53 r5) AI
Requires digital signature verification before component installation, directly stopping execution of code downloaded without integrity checks.
Employs integrity verification tools that can identify missing or failed checks on downloaded software after the fact.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Directly requires assessing authenticity/integrity of software before acquisition and use, preventing unverified downloads.
Requires cryptographic integrity protections (signatures/hashes) for data-in-transit, covering downloaded code.
Prevents execution of unauthorized software, blocking the outcome of an unchecked download.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Mandating integrity checks, digital signatures, and origin tracing for ICT components directly reduces the chance that code or firmware lacking an integrity check will be accepted into the organisation’s environment.
Requiring suppliers to disclose vulnerabilities and mandating verified updates lowers the chance that code lacking integrity checks will be deployed.
Hardening callouts derived
Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).
Oracle Linux 8 (1 rule)
- V-248575 OL 8 must prevent the installation of software, patches, service packs, device drivers, or operating system components of local packages without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-494
Oracle Linux 9 (1 rule)
- V-271524 OL 9 must check the GPG signature of software packages originating from external software repositories before installation. prevents CWE-494
RHEL 7 (2 rules)
- V-204447 The Red Hat Enterprise Linux operating system must prevent the installation of software, patches, service packs, device drivers, or operating system components from a repository without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-494
- V-204448 The Red Hat Enterprise Linux operating system must prevent the installation of software, patches, service packs, device drivers, or operating system components of local packages without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-494
RHEL 8 (1 rule)
- V-230264 RHEL 8 must prevent the installation of software, patches, service packs, device drivers, or operating system components from a repository without verification they have been digitally signed using a certificate that is issued by a Certificate Authority (CA) that is recognized and approved by the organization. prevents CWE-494
RHEL 9 (1 rule)
- V-257820 RHEL 9 must check the GPG signature of software packages originating from external software repositories before installation. prevents CWE-494