Description
MajorDoMo (aka Major Domestic Module) allows unauthenticated remote code execution via the admin panel's PHP console feature. An include order bug in modules/panel.class.php causes execution to continue past a redirect() call that lacks an exit statement, allowing unauthenticated requests to reach the ajax handler in inc_panel_ajax.php. The console handler within that file passes user-supplied input from GET parameters (via register_globals) directly to eval() without any authentication check. An attacker can execute arbitrary PHP code by sending a crafted GET request to /admin.php with ajax_panel, op, and command parameters.
Problem types
Improper Control of Generation of Code ('Code Injection')
Product status
Any version
Credits
Valentin Lobstein
References
chocapikk.com/posts/2026/majordomo-revisited/ (MajorDoMo Revisited: What I Missed in 2023)
github.com/sergejey/majordomo/pull/1177 (Fix PR: sergejey/majordomo#1177)
www.vulncheck.com/...e-code-execution-via-admin-console-eval (VulnCheck Advisory: MajorDoMo Unauthenticated Remote Code Execution via Admin Console Eval)