Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAccess add-sales.php form
-
ExploitSubmit negative values in txtprice parameter
-
ExecutionBypass input validation logic
-
ImpactCorrupt financial calculations and sales records
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Input size validation
|
| Exploitation Conditions | Remote unauthenticated attacker can exploit SourceCodester Pharmacy Product Management System 1.0 add-sales.php via HTTP POST requests with negative values in txtprice and txttotalcost parameters. No authentication, user interaction, or special configuration required. |
| Impact | Despite the absence of a CVSS score, this vulnerability presents moderate real-world risk in financial systems. The attack vector is network-accessible and does not appear to require elevated authentication based on the PHP parameter handling described. The presence of publicly available exploit code (POC) lowers the barrier to exploitation. However, real-world impact depends on downstream controls: if the system lacks financial reconciliation, audit trails, or separate approval workflows for unusual transactions, risk is elevated. Conversely, if financial records are reviewed by human auditors or validated against external payment gateways, the fraud may be detected and contained. For organizations deploying this open-source system in production to handle real payments, this represents a critical business logic flaw; for test environments or systems with compensating controls, the risk is reduced. The lack of CVSS scoring reflects the challenge of quantifying business logic vulnerabilities in a generic framework. |
| Exploit ScenarioDerived | An attacker accesses the Pharmacy Product Management System's sales entry interface and submits a sales record with a negative price (e.g., txtprice=-100) and negative total cost. The application accepts these values without validation and records the transaction as-is, reducing the total sales revenue or creating phantom refunds. Over multiple transactions, the attacker systematically manipulates financial records, deflating reported revenue or triggering negative balances that mask theft or fraud. Because the vulnerability is in business logic rather than code execution, the exploit requires no special tools beyond a web browser or curl script to manipulate POST parameters-exploiting it is trivial once the vulnerability is known, which explains the public availability of proof-of-concept code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 01, 2026
Pharmacy Product Management System 1.0 accepts negative price and total cost values in sales transactions due to insufficient input validation in add-sales.php, enabling attackers to manipulate financial records, corrupt sales reports, and cause financial loss. The vulnerability allows unauthenticated or low-privilege users to submit arbitrary negative values that bypass business logic controls. Publicly available exploit code exists demonstrating this business logic flaw.
RemediationAI
Implement strict input validation in add-sales.php to enforce non-negative values for txtprice and txttotalcost parameters. At minimum, add server-side validation to reject any submission where price or total cost is less than zero, and return an error message to the user. Consider implementing range checks (e.g., maximum reasonable price per item) and type enforcement (numeric, non-null). Additionally, implement business logic controls such as manual approval workflows for large or unusual transactions, and maintain immutable audit logs of all sales modifications. If this is an open-source deployment, check the GitHub repository for patched versions; the PoC reference (https://github.com/meifukun/Web-Security-PoCs/blob/main/Pharmacy-Product-Management-System/Logic-AddSales-NegativePrice.md) may also contain community-contributed fixes. For immediate mitigation, restrict add-sales.php access to trusted administrators only via network-level controls or authentication gating.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability exists in a PHP-based web application (SourceCodester Pharmacy Product Management System) that processes sales transactions. The add-sales.php file handles transaction data including price and total cost parameters (txtprice and txttotalcost). The root cause is a business logic validation failure-the application accepts numeric input without enforcing domain constraints (non-negative values). Unlike injection or authentication flaws, this attack exploits inadequate business rule enforcement at the application layer. Negative price submissions cause the application to record inverted financial transactions, corrupting ledgers and enabling fraudulent financial manipulation.
Know when PHP gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
Lifecycle Timeline
2DescriptionCVE.org
A Business Logic vulnerability exists in SourceCodester Pharmacy Product Management System 1.0. The vulnerability is located in the add-sales.php file. The application fails to validate the "txtprice" and "txttotalcost" parameters, allowing attackers to submit negative values for sales transactions. This leads to incorrect financial calculations, corruption of sales reports, and potential financial loss.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
EUVD-2026-17901
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB