Description
Open Source Point of Sale (opensourcepos) is a web based point of sale application written in PHP using CodeIgniter framework. Starting in version 3.4.0 and prior to version 3.4.2, a Cross-Site Request Forgery (CSRF) vulnerability exists in the application's filter configuration. The CSRF protection mechanism was **explicitly disabled**, allowing the application to process state-changing requests (POST) without verifying a valid CSRF token. An unauthenticated remote attacker can exploit this by hosting a malicious web page. If a logged-in administrator visits this page, their browser is forced to send unauthorized requests to the application. A successful exploit allows the attacker to silently create a new Administrator account with full privileges, leading to a complete takeover of the system and loss of confidentiality, integrity, and availability. The vulnerability has been patched in version 3.4.2. The fix re-enables the CSRF filter in `app/Config/Filters.php` and resolves associated AJAX race conditions by adjusting token regeneration settings. As a workaround, administrators can manually re-enable the CSRF filter in `app/Config/Filters.php` by uncommenting the protection line. However, this is not recommended without applying the full patch, as it may cause functionality breakage in the Sales module due to token synchronization issues.
Problem types
CWE-352: Cross-Site Request Forgery (CSRF)
Product status
References
github.com/...rcepos/security/advisories/GHSA-wjm4-hfwg-5w5r
github.com/...OSPOS-CSRF-Unauthorized-Administrator-Creation
github.com/...rcepos/security/advisories/GHSA-wjm4-hfwg-5w5r
github.com/opensourcepos/opensourcepos/pull/4349
github.com/...ommit/d575c8da9a1d7af8313a1e758e000e243f5614ef
github.com/...OSPOS-CSRF-Unauthorized-Administrator-Creation
Data based on CVE®. Copyright © 1999-2025, The MITRE Corporation. All rights reserved.