IPFire
CVE-2025-34316
MEDIUM
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Authenticated web-UI access needed (PR:L) and a victim must view the page (UI:R); stored XSS crosses into the victim browser context (S:C) with limited C/I impact and no availability effect.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
Lifecycle Timeline
2DescriptionCVE.org
IPFire versions prior to 2.29 (Core Update 198) contain a stored cross-site scripting (XSS) vulnerability that allows an authenticated attacker to inject arbitrary JavaScript code through the txt_mailuser and txt_mailpass parameters when updating the mail server settings. When a user updates the mail server, the application issues an HTTP POST request to /cgi-bin/mail.cgi and the username and password are provided in the txt_mailuser and txt_mailpass parameters. The values of these parameters are stored and later rendered in the web interface without proper sanitation or encoding, allowing injected scripts to execute in the context of other users who view the affected mail configuration.
AnalysisAI
Stored cross-site scripting in the IPFire firewall distribution (versions before 2.29 Core Update 198) lets an authenticated administrator inject arbitrary JavaScript through the txt_mailuser and txt_mailpass fields of the mail-server settings form, which is posted to /cgi-bin/mail.cgi. Because those values are persisted and later rendered in the web UI without sanitisation or encoding, the script executes in the browser session of any other user who opens the affected mail configuration page, enabling session theft or privileged actions in that user's context. Authentication is required (CVSS 4.0 vector shows PR:L) and the victim must view the page (UI:P), so exploitation is a two-party, low-privilege-to-privileged chain; EPSS is 0.45% (37th percentile), no public exploit code is known, and the issue is fixed in Core Update 198.
Technical ContextAI
The flaw is a classic CWE-79 (Improper Neutralization of Input During Web Page Generation) stored/persistent XSS in the IPFire web management interface, which is built on CGI scripts served by a web server on the firewall appliance. The mail notification/relay configuration page issues an HTTP POST to /cgi-bin/mail.cgi carrying the SMTP account username and password as the txt_mailuser and txt_mailpass parameters; these values are written to configuration storage and subsequently echoed back into the HTML of the mail settings page. Missing output encoding means attacker-controlled markup is interpreted as script by the browser rather than displayed as text, and because the payload is persisted server-side it fires for every user who later loads that page - the defining difference between stored XSS and reflected XSS. The impact stays within the victim's browser origin (session cookies, CSRF tokens, ability to drive authenticated UI actions) and does not by itself yield code execution or privilege escalation on the firewall host. CPE data pins the affected build as the IPFire 2.29 tree at Core Updates 183 through 197, with the vendor's cumulative 'ipfire:ipfire:*' range covering all earlier releases.
RemediationAI
Upgrade to IPFire 2.29 Core Update 198 or later, the vendor-released fix for CVE-2025-34316; the update is distributed through the normal IPFire package system (Pakfire), and the advisory and release notes are at https://www.ipfire.org/blog/ipfire-2-29-core-update-198-released and https://bugzilla.ipfire.org/show_bug.cgi?id=13891. Because the injected script persists in stored configuration, patching alone does not remove an existing payload: after upgrading, open the mail server configuration page, clear and re-save the mail username and password fields (or re-enter the correct credentials from a known-good source) so any previously stored JavaScript is overwritten, and review the mail settings and any log/notification mailboxes for evidence of tampering. As a compensating control on systems that cannot be updated immediately, restrict access to the web management interface (TCP 444/81 or the configured admin port) to a trusted management VLAN or VPN and avoid exposing it to the internet, which removes the network reachability required by the AV:N vector; the trade-off is loss of remote administration. Note that the practical risk is limited: exploitation requires an authenticated session on the admin UI plus a second user viewing the affected page, the impact is confined to the victim's browser session, and there is no public exploit code and only a 0.45% EPSS score, so remediation should be scheduled rather than treated as an emergency.
IPFire 2.19 has a Remote Command Injection vulnerability in ids.cgi via the OINKCODE parameter, which is mishandled by a
lfs/backup in IPFire 2.25-core155 does not ensure that /var/ipfire/backup/bin/backup.pl is owned by the root account. Ra
An authenticated command injection vulnerability exists in IPFire Firewall before 2.21 Core Update 124 in backup.cgi. Ra
IPFire 2.21 Core Update 127 contains multiple stored cross-site scripting vulnerabilities in the extrahd.cgi script that
IPFire 2.21 Core Update 127 contains multiple cross-site scripting vulnerabilities in the ovpnmain.cgi script that allow
IPFire 2.21 Core Update 127 contains multiple reflected cross-site scripting vulnerabilities in the hosts.cgi script tha
IPFire 2.21 Core Update 127 contains a reflected cross-site scripting vulnerability in the updatexlrator.cgi script that
IPFire 2.21 Core Update 127 contains multiple reflected cross-site scripting vulnerabilities in the fwhosts.cgi script t
Command injection in the IPFire URL filter allows an authenticated administrator to execute arbitrary shell commands as
Authenticated command injection in the IPFire firewall distribution prior to 2.29 (Core Update 198) lets a low-privilege
Stored cross-site scripting in IPFire (all releases prior to 2.29 Core Update 198) allows an authenticated user with acc
Multiple stored cross-site scripting vulnerabilities in the web user interface of IPFire versions prior to 2.27 allows a
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today