Summary
The FreePBX logfiles module contains several authenticated SQL injection vulnerabilities.
Authentication with a known username is required.
Details
Vulnerabilities exist due to improper input sanitization in the following module commands:
logfiles_is_exist_file_name
logfiles_set
logfiles_destory
The root cause is in the isExistLogFiles() function in Logfiles.class.php (line 537), which directly interpolates user input of the namefile parameter into SQL queries without proper sanitization.
Impact
This issue allows user-controlled input to be used directly in SQL queries without proper sanitization. An attacker who can access the affected functionality could potentially exploit this to view and/or manipulate data directly within the database.
Mitigations
- Update the
logfiles module to the latest version.
- Ensure only authorized users have access to the FreePBX Administrator Control Panel e.g. by using the FreePBX User Management, SysAdmin VPN, MFA or SAML modules.
- Deny access from hostile networks to the ACP e.g. by using the FreePBX Firewall module.
Scoring
CVSS 4.0 Base vector string: CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS 4.0 Base Threat Environment Supplemental vector string: CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/R:U/V:D/RE:L/U:Amber
Current CVSS-B v4.0 score: 8.6 (High)
Current CVSS-BTES v4.0 score: 6.1 (Medium)
Alternative CVSS-BTES v4.1 score: 0.9 (Low)
See details on scoring on the FreePBX blog at https://www.freepbx.org/watch-what-we-do-with-security-fixes-%f0%9f%91%80/
History
This vulnerability was introduced in 2020 🧓🏽 and accordingly attains an Amber alert in the Provider Urgency supplemental metric.
https://github.com/FreePBX/logfiles/blame/5c635cc315568abd239db1b047e57762b172b9ad/Logfiles.class.php#L427
Summary
The FreePBX
logfilesmodule contains several authenticated SQL injection vulnerabilities.Authentication with a known username is required.
Details
Vulnerabilities exist due to improper input sanitization in the following module commands:
logfiles_is_exist_file_namelogfiles_setlogfiles_destoryThe root cause is in the
isExistLogFiles()function in Logfiles.class.php (line 537), which directly interpolates user input of thenamefileparameter into SQL queries without proper sanitization.Impact
This issue allows user-controlled input to be used directly in SQL queries without proper sanitization. An attacker who can access the affected functionality could potentially exploit this to view and/or manipulate data directly within the database.
Mitigations
logfilesmodule to the latest version.Scoring
CVSS 4.0 Base vector string:
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:NCVSS 4.0 Base Threat Environment Supplemental vector string:
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/R:U/V:D/RE:L/U:AmberCurrent CVSS-B v4.0 score: 8.6 (High)
Current CVSS-BTES v4.0 score: 6.1 (Medium)
Alternative CVSS-BTES v4.1 score: 0.9 (Low)
See details on scoring on the FreePBX blog at https://www.freepbx.org/watch-what-we-do-with-security-fixes-%f0%9f%91%80/
History
This vulnerability was introduced in 2020 🧓🏽 and accordingly attains an Amber alert in the Provider Urgency supplemental metric.
https://github.com/FreePBX/logfiles/blame/5c635cc315568abd239db1b047e57762b172b9ad/Logfiles.class.php#L427