Nocturnal Pajama Mutants
Severity: high

NoSQL injection

express-cart

Overview

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.

Remediation

Update to version 1.1.8 or later.

Advisory timeline

  1. Created

    2018-11-07T16:24:59.460Z
  2. Updated

    2018-11-07T16:24:59.461Z