core: OPNsense: Stored XSS in Firewall Rules/NAT pages via a HTML-attribute breakout
What fixes it
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
OPNsense is a FreeBSD based firewall and routing platform. Prior to version 26.1.11, Firewall Rules and NAT views place stored category names and alias descriptions into HTML title attributes in filter_rule.volt and nat_rule.volt without quote-safe encoding. The response layer uses ENT_NOQUOTES, so a double quote survives and closes the attribute, allowing an event-handler attribute to be added to the existing span. A user with Firewall Categories or Firewall Alias Edit privileges can store a category name or alias description; the category must be assigned to a filter or NAT rule, or the alias must be referenced by a rule source or destination, and the rule must be saved so the affected tooltip is rendered. Script then executes in the session of an administrator or other user who opens the affected Rules or NAT page. The script can access CSRF material and perform authenticated actions as the victim. This issue is fixed in version 26.1.11.
Text from CVE List
Affected versions 2
- coreaffected: < 26.1.11CVE List
- core<= 26.1.10, <= 26.4.1GitHub
References 4
- github.com/opnsense/core/commit/5e6313f50546474031805039e209830b63b2b0e4Fixvia CVE List
- github.com/opnsense/core/commit/fb3b8a07f407ce281b1dde748706acbb0bc514ceFixvia CVE List
- github.com/opnsense/core/security/advisories/GHSA-2xrm-p255-p43hExploitvia CVE List
- hackerask.com/posts/opnsenseReferencevia CVE List