nodejs/security-wg · Security
NoSQL injection in express-cart
- GHSA ID
- GHSA-f5cv-xrv9-r8w7
- Severity
- high
- Published
- Updated
Description
Versions of express-cart before 1.1.8 are vulnerable to NoSQL injection.
The vulnerability is caused by the lack of user input sanitization in the login handlers. In both cases, the customer login and the admin login, parameters from the JSON body are sent directly into the MongoDB query which allows to insert operators.
These operators can be used to extract the value of the field blindly in the same manner of a blind SQL injection. In this case, the $regex operator is used to guess each character of the token from the start.
Recommendation
Update to version 1.1.8 or later.
CWEs
- CWE-89 · Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')