module
MajorDoMo Console Eval Unauthenticated RCE
| Disclosed | Created |
|---|---|
| Feb 18, 2026 | Mar 2, 2026 |
Disclosed
Feb 18, 2026
Created
Mar 2, 2026
Description
This module exploits an unauthenticated remote code execution vulnerability in
MajorDoMo, an open-source home automation platform. The admin panel's PHP console
is accessible without authentication due to a missing exit after redirect in
modules/panel.class.php. The redirect("/") call intended to block unauthenticated
users lacks an exit statement, so execution continues into the ajax panel handler
which includes inc_panel_ajax.php unconditionally. Inside, the console handler
passes the user-supplied command parameter directly to eval() via the evalConsole()
function. The command, ajax_panel, and op parameters are all controllable via GET
request through MajorDoMo's register_globals-style gr() function.
This results in unauthenticated PHP code evaluation via a single GET request
to /admin.php.
All versions of MajorDoMo up to and including the latest release are affected.
The fix is tracked in PR sergejey/majordomo#1177.
MajorDoMo, an open-source home automation platform. The admin panel's PHP console
is accessible without authentication due to a missing exit after redirect in
modules/panel.class.php. The redirect("/") call intended to block unauthenticated
users lacks an exit statement, so execution continues into the ajax panel handler
which includes inc_panel_ajax.php unconditionally. Inside, the console handler
passes the user-supplied command parameter directly to eval() via the evalConsole()
function. The command, ajax_panel, and op parameters are all controllable via GET
request through MajorDoMo's register_globals-style gr() function.
This results in unauthenticated PHP code evaluation via a single GET request
to /admin.php.
All versions of MajorDoMo up to and including the latest release are affected.
The fix is tracked in PR sergejey/majordomo#1177.
Author
Valentin Lobstein [email protected]
Platform
Linux,PHP,Unix,Windows
Architectures
php, cmd
References
Module Options
To display the available options, load the module within the Metasploit console and run the commands 'show options' or 'show advanced':
Rapid7 Labs
2026 Global Threat Landscape Report
The predictive window has collapsed. Exploitation follows disclosure in days. See how attackers are accelerating and how to stay ahead.