DVSA has multiple dependencies.
The function that is triggered by the REST API calls uses two vulnerable libraries: (1) node-serialize (2) node-jose
Here are the vulnerabilities with the highest risk.
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ High │ Invalid Curve Attack │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ node-jose │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ node-jose │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ node-jose │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://nodesecurity.io/advisories/324 │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ High │ Regular Expression Denial of Service │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ minimatch │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ node-jose │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ node-jose > browserify > glob > minimatch │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://nodesecurity.io/advisories/118 │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Critical │ Potential Command Injection │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ shell-quote │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ node-jose │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ node-jose > browserify > shell-quote │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://nodesecurity.io/advisories/117 │
└───────────────┴──────────────────────────────────────────────────────────────┘
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Critical │ Code Execution through IIFE │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ node-serialize │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in │ No patch available │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ node-serialize │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ node-serialize │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://nodesecurity.io/advisories/311 │
└───────────────┴──────────────────────────────────────────────────────────────┘
You can refer to Lesson #1: Code Injection, as a practical exploit of the node-serialize library.