Summary
A Reflected Cross-site scripting vulnerability is present on the Asterisk HTTP Status page.
Description
The Asterisk HTTP status page is exposed by FreePBX and is available by default on v16 via any bound IP address at port 8088. (By default on v17, the HTTP binding is only to localhost IP -- so significantly somewhat less vulnerable.) The vulnerability can be exploited by unauthenticated attackers to obtain cookies from logged-in users, allowing to hijack a session of an administrative user.
Note that HTTPS is also affected -- default is port 8089. ON v17 HTTPS IS BOUND TO :: THE SAME AS v16.
Impact
The theft of admin session cookies allows attackers to gain control over the FreePBX admin interface, enabling them to access sensitive data, modify system configurations, create backdoor accounts, and cause service disruption.
Indicators of Compromise (IoC)
If your v16 or v17 system exposed port 8088 or 8089 on its public IP to hostile networks while you were logged in to the Administrator Control Panel (ACP), then you may be at risk. A thorough review of system access logs is advised, particularly webserver access logs.
Mitigation
Besides updating the core module on supported versions of FreePBX, there are at least three additional ways to mitigate the impact of this issue and others of this class. These ideas should help users of all versions of FreePBX.
Lock down HTTP status page to localhost
- Navigate to "Advanced Settings".
- Change both the "HTTP Bind Address" and "HTTPS Bind Address" to "127.0.0.1".
- Press "Submit" at the bottom of the page.
- Click "Apply Config" button in the upper-right corner.
- Restart the Asterisk process e.g. reboot the system.
Always logout when you are done
Logging out of the ACP as soon as you are done managing your FreePBX system will invalidate the session and prevent the use of any stolen cookies for subsequent logins.
Prevent hostile access
Do not allow unknown IPs to connect to your system. Consider a VPN, firewall and/or other similar solution(s) to deny access to potential intruders.
Scoring
CVSS 4.0 Base vector string: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N
CVSS 4.0 more complete vector string: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N/E:U/AU:Y/R:U/V:D/RE:L/U:Amber
Current CVSS v4.0 Base score is 7.5 (High)
Current CVSS v4.0 more complete score is 4.6 (Medium)
Alternative CVSS v4.1 score is 4.6 (Medium)
See details on scoring on the FreePBX blog at https://www.freepbx.org/watch-what-we-do-with-security-fixes-%f0%9f%91%80/
Summary
A Reflected Cross-site scripting vulnerability is present on the Asterisk HTTP Status page.
Description
The Asterisk HTTP status page is exposed by FreePBX and is available by default on v16 via any bound IP address at port 8088. (By default on v17, the HTTP binding is only to localhost IP -- so
significantlysomewhat less vulnerable.) The vulnerability can be exploited by unauthenticated attackers to obtain cookies from logged-in users, allowing to hijack a session of an administrative user.Note that HTTPS is also affected -- default is port 8089. ON v17 HTTPS IS BOUND TO :: THE SAME AS v16.
Impact
The theft of admin session cookies allows attackers to gain control over the FreePBX admin interface, enabling them to access sensitive data, modify system configurations, create backdoor accounts, and cause service disruption.
Indicators of Compromise (IoC)
If your v16 or v17 system exposed port 8088 or 8089 on its public IP to hostile networks while you were logged in to the Administrator Control Panel (ACP), then you may be at risk. A thorough review of system access logs is advised, particularly webserver access logs.
Mitigation
Besides updating the
coremodule on supported versions of FreePBX, there are at least three additional ways to mitigate the impact of this issue and others of this class. These ideas should help users of all versions of FreePBX.Lock down HTTP status page to localhost
Always logout when you are done
Logging out of the ACP as soon as you are done managing your FreePBX system will invalidate the session and prevent the use of any stolen cookies for subsequent logins.
Prevent hostile access
Do not allow unknown IPs to connect to your system. Consider a VPN, firewall and/or other similar solution(s) to deny access to potential intruders.
Scoring
CVSS 4.0 Base vector string:
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:NCVSS 4.0 more complete vector string:
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N/E:U/AU:Y/R:U/V:D/RE:L/U:AmberCurrent CVSS v4.0 Base score is 7.5 (High)
Current CVSS v4.0 more complete score is 4.6 (Medium)
Alternative CVSS v4.1 score is 4.6 (Medium)
See details on scoring on the FreePBX blog at https://www.freepbx.org/watch-what-we-do-with-security-fixes-%f0%9f%91%80/