Summary
CVE-2026-102425 is a critical unauthenticated remote code execution vulnerability in the Balbooa Forms extension (com_baforms) for Joomla. It stems from unsafe use of eval() when processing the extension’s optional "PHP after submission" feature, allowing an attacker to inject and execute arbitrary PHP code via form field shortcodes. The flaw carries a CVSS score of 9.5 and requires no authentication or user interaction.
Technical details
- Balbooa Forms lets administrators configure custom PHP code that runs automatically after a public form is submitted.
- That PHP code can reference form fields using shortcodes, which the extension substitutes with the raw, attacker-submitted value before passing the resulting string to
eval(). - Because the substitution happens before evaluation and the values are not sanitized, an attacker who submits a form containing PHP metacharacters inside a double-quoted string can break out and inject arbitrary PHP.
- Attack vector is network-based, requires no privileges and no user interaction (an attacker only needs to submit a public-facing form).
- Successful exploitation results in full remote code execution on the underlying web server, compromising confidentiality, integrity, and availability of the Joomla installation and potentially the host.
- Exploitation is conditional: the targeted form must have the optional "PHP after submission" action enabled with a field shortcode interpolated inside a double-quoted PHP string.
Affected software
- Balbooa Forms extension for Joomla (com_baforms), versions 1.0.0 through 2.4.3.3
Severity
- CVSS Score: 9.5 (Critical)
- CVSS 4.0 Vector:
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Mitigation and recommended actions
- Immediate: Upgrade Balbooa Forms to version 2.4.3.4 or later, where the shortcode substitution/
eval()handling has been fixed. - If immediate patching is not possible: Disable or avoid using the "PHP after submission" feature on public-facing forms, and audit any existing custom PHP-after-submission scripts for field shortcodes embedded in double-quoted strings; remove or rewrite them until patched.
- Review Joomla and web server logs for unexpected PHP errors or anomalous form submissions containing code-like payloads as an indicator of attempted exploitation.

