PHP object injection in FacturaScripts via WidgetSelect
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Code execution
- Confidentiality · integrity · availability
- None · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-502.
Summary
FacturaScripts from 2025.7 before 2026.7 has a PHP object injection flaw in WidgetSelect::processFormData(). The code calls unserialize() on raw POST data for multiple-select fields without an allowed_classes filter, which is CWE-502. An authenticated attacker with low privileges can submit a serialized XLSXWriter object as a field value, so its __destruct() method runs and deletes attacker-specified files such as config.php. The result is denial of service and a potential application reinstall hijack.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
FacturaScripts before version 2026.7 contains a PHP object injection vulnerability in WidgetSelect::processFormData() that allows authenticated attackers to trigger unserialize() on raw POST data without an allowed_classes filter for multiple-select fields. Attackers can submit a serialized XLSXWriter object as the field value to invoke its __destruct() method, deleting arbitrary attacker-specified files such as config.php or backup data, resulting in denial of service and potential application reinstall hijack.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade NeoRazorX FacturaScripts to version 2026.7 or later, which fixes the issue.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA facturascripts (NeoRazorX) Fixed in 2026.7
Timeline
- 2026-10-05 Threatist record created from CVE-2026-104905
- 2026-10-05 Alias added: GHSA-8rvh-x87q-rm2p
References
Patch 1
Advisory 1
More NeoRazorX vulnerabilities
- TI-2026-19336 FacturaScripts has a Stored Cross-Site Scripting (XSS) in "Observations" field via History View CVSS 3.1CRITICAL 9.0
- TI-2026-22235 Remote Code Execution (RCE) via Zip Slip in Plugin Upload Mechanism CVSS 3.1HIGH 7.2
- TI-2026-31084 FacturaScripts: Unauthenticated phpinfo() Disclosure via Installer Endpoint in FacturaScripts CVSS 3.1MEDIUM 5.3
- TI-2026-22236 FacturaScripts: Unstripped Image Metadata (EXIF) Leakage via Library Module File Upload/Download CVSS 3.1MEDIUM 6.5
- TI-2026-31083 FacturaScripts: Stored XSS via product reference in sales/purchases CVSS 3.1MEDIUM 5.4
- TI-2026-25191 FacturaScripts unauthorized modification of immutable nick field via EditUser controller CVSS 4.0MEDIUM 5.3
Sources
- CVE-2026-104905 · CVE Program
- CVE-2026-104905 · NVD
- FIRST EPSS
- GHSA-8rvh-x87q-rm2p · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences