High · published December 16, 2025
⚠️ There's a sneaky way for a local user to escalate their privileges in FreePBX using the old `amportal` script! 😱 A member of the `asterisk` group could be a black hat in disguise! Imagine a hotel manager who leaves the key to the staff-only lounge lying around. Any staff member could waltz in and get access to sensitive documents! Similarly, if someone in the `asterisk` group places a malicious `freepbx_engine` file in the `/etc/asterisk/` directory, it could be executed with root permissions without a second thought. With this vulnerability, an attacker could essentially gain root access through the `amportal` script, allowing them to modify system files, install malicious software, or compromise sensitive data. It's like giving a trusted employee the power to rewrite the company's security protocols - absolutely devastating!
Imagine a hotel manager who leaves the key to the staff-only lounge lying around. Any staff member could waltz in and get access to sensitive documents! Similarly, if someone in the `asterisk` group places a malicious `freepbx_engine` file in the `/etc/asterisk/` directory, it could be executed with root permissions without a second thought. This local privilege escalation vulnerability exists because the deprecated `amportal` script executes the `freepbx_engine` file from the writable `/etc/asterisk/` directory, allowing a member of the `asterisk` group to create a harmful file that runs with root permissions upon execution.
With this vulnerability, an attacker could essentially gain root access through the `amportal` script, allowing them to modify system files, install malicious software, or compromise sensitive data. It's like giving a trusted employee the power to rewrite the company's security protocols - absolutely devastating! To safeguard your system, upgrade FreePBX to versions 16.0.45 or 17.0.24 immediately. Ensure that only trusted users are in the `asterisk` group, and check for any suspicious files in the `/etc/asterisk/` directory. Finally, verify that `live_dangerously` is set to 'no' in the `asterisk.conf` file and eliminate any unsafe custom applications that could manipulate the filesystem. You've got this! With these steps, you’ll bolster your FreePBX security in no time! 🛡️
| Product | Versions | Fixed in |
|---|---|---|
| sangoma/freepbx | ≥ 16.0, < 16.0.45 | 16.0.45 |
| sangoma/freepbx | ≥ 17.0, < 17.0.24 | 17.0.24 |