Version 2.0.17 of the mongodb npm package represents a minor update over version 2.0.16, primarily focusing on an update to its core dependency, mongodb-core. While much of the package remains consistent – including the description, development dependencies, license, repository information, and author – the key change lies in the upgrade of mongodb-core from version 1.1.12 to 1.1.13. This seemingly small adjustment can have ripple effects, potentially addressing bug fixes, performance improvements, or the introduction of new features within the underlying MongoDB driver logic handled by mongodb-core.
For developers using this legacy driver emulation layer, the implication is subtle but potentially important. Migrating from 2.0.16 to 2.0.17 could resolve unexpected behaviors or enhance efficiency when interacting with MongoDB databases. Developers should consult the changelog or release notes for mongodb-core version 1.1.13 to understand the specific alterations incorporated and how they might impact their applications. The readable-stream dependency remains at version 1.0.31 in both versions, indicating no changes in how the driver handles streams of data.
While the mongodb package itself emulates a legacy driver, its continued maintenance and updates, as demonstrated by this version bump, ensure compatibility and stability for applications relying on its API. The release date difference, roughly ten days, suggests a reactive update containing essential adjustments warranting a new release. Developers already comfortably using 2.0.16 probably should consider updating to 2.0.17 to benefit from potential under-the-hood improvements in mongodb-core.
All the vulnerabilities related to the version 2.0.17 of the package
Denial of Service in mongodb
Versions of mongodb
prior to 3.1.13 are vulnerable to Denial of Service. The package fails to properly catch an exception when a collection name is invalid and the DB does not exist, crashing the application.
Upgrade to version 3.1.13 or later.
Deserialization of Untrusted Data in bson
Incorrect parsing of certain JSON input may result in js-bson not correctly serializing BSON. This may cause unexpected application behaviour including data disclosure.
Deserialization of Untrusted Data in bson
All versions of bson before 1.1.4 are vulnerable to Deserialization of Untrusted Data. The package will ignore an unknown value for an object's _bsontype, leading to cases where an object is serialized as a document rather than the intended BSON type.
Prototype Pollution in minimist
Affected versions of minimist
are vulnerable to prototype pollution. Arguments are not properly sanitized, allowing an attacker to modify the prototype of Object
, causing the addition or modification of an existing property that will exist on all objects.
Parsing the argument --__proto__.y=Polluted
adds a y
property with value Polluted
to all objects. The argument --__proto__=Polluted
raises and uncaught error and crashes the application.
This is exploitable if attackers have control over the arguments being passed to minimist
.
Upgrade to versions 0.2.1, 1.2.3 or later.
Prototype Pollution in minimist
Minimist prior to 1.2.6 and 0.2.4 is vulnerable to Prototype Pollution via file index.js
, function setKey()
(lines 69-95).
DLL Injection in kerberos
Version of kerberos
prior to 1.0.0 are vulnerable to DLL Injection. The package loads DLLs without specifying a full path. This may allow attackers to create a file with the same name in a folder that precedes the intended file in the DLL path search. Doing so would allow attackers to execute arbitrary code in the machine.
Upgrade to version 1.0.0 or later.