Vulnerabilities |
5 via 6 paths |
|---|---|
Dependencies |
32 |
Source |
GitHub |
Find, fix and prevent vulnerabilities in your code.
high severity
new
- Vulnerable module: brace-expansion
- Introduced through: ejs@3.1.10 and minimatch@3.1.5
Detailed paths
-
Introduced through: mebo@meboHQ/mebo › ejs@3.1.10 › jake@10.9.4 › filelist@1.0.6 › minimatch@5.1.9 › brace-expansion@2.1.1Remediation: Upgrade to ejs@5.0.1.
-
Introduced through: mebo@meboHQ/mebo › minimatch@3.1.5 › brace-expansion@1.1.15Remediation: Upgrade to minimatch@9.0.6.
Overview
brace-expansion is a Brace expansion as known from sh/bash
Affected versions of this package are vulnerable to Inefficient Algorithmic Complexity via the expand function. An attacker can cause excessive CPU consumption and block the event loop by supplying a specially crafted string containing multiple consecutive non-expanding '{}' brace groups. The max option does not prevent this issue, as it only limits the output size and not the computational workload.
Remediation
Upgrade brace-expansion to version 5.0.7 or higher.
References
high severity
- Vulnerable module: ip
- Introduced through: ip@1.1.9
Detailed paths
-
Introduced through: mebo@meboHQ/mebo › ip@1.1.9
Overview
ip is a Node library.
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the ip.isPublic() and ip.isPrivate() functions. An attacker can interact with internal network resources by supplying specially crafted IP address such as octal localhost format ("017700000001") that is incorrectly identified as public.
Note:
This issue exists because of an incomplete fix for CVE-2024-29415.
PoC
Test octal localhost bypass:
node -e "const ip=require('ip'); console.log('017700000001 bypass:', ip.isPublic('017700000001'));" - returns true
Remediation
There is no fixed version for ip.
References
high severity
- Vulnerable module: ip
- Introduced through: ip@1.1.9
Detailed paths
-
Introduced through: mebo@meboHQ/mebo › ip@1.1.9
Overview
ip is a Node library.
Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the ip.isPublic() and ip.isPrivate() functions. An attacker can interact with internal network resources by supplying specially crafted IP address such as null route ("0") that is being incorrectly identified as public.
Note: This issue exists because of an incomplete fix for CVE-2024-29415.
Exploit is only possible if the application and operating system interpret connection attempts to 0 or 0.0.0.0 as connections to 127.0.0.1.
PoC
Test null route bypass:
node -e "const ip=require('ip'); console.log('0 bypass:', ip.isPublic('0'));" - returns true
Remediation
There is no fixed version for ip.
References
medium severity
- Vulnerable module: ip
- Introduced through: ip@1.1.9
Detailed paths
-
Introduced through: mebo@meboHQ/mebo › ip@1.1.9
Overview
ip is a Node library.
Affected versions of this package are vulnerable to Server-Side Request Forgery (SSRF) via the isPublic function, which identifies some private IP addresses as public addresses due to improper parsing of the input.
An attacker can manipulate a system that uses isLoopback(), isPrivate() and isPublic functions to guard outgoing network requests to treat certain IP addresses as globally routable by supplying specially crafted IP addresses.
Note
This vulnerability derived from an incomplete fix for CVE-2023-42282
Remediation
There is no fixed version for ip.
References
medium severity
- Vulnerable module: uuid
- Introduced through: uuid@8.3.2
Detailed paths
-
Introduced through: mebo@meboHQ/mebo › uuid@8.3.2Remediation: Upgrade to uuid@11.1.1.
Overview
uuid is a RFC4122 (v1, v4, and v5) compliant UUID library.
Affected versions of this package are vulnerable to Improper Validation of Specified Index, Position, or Offset in Input due to accepting external output buffers but not rejecting out-of-range writes (small buf or large offset). This inconsistency allows silent partial writes into caller-provided buffers.
PoC
cd /home/StrawHat/uuid
npm ci
npm run build
node --input-type=module -e "
import {v4,v5,v6} from './dist-node/index.js';
const ns='6ba7b810-9dad-11d1-80b4-00c04fd430c8';
for (const [name,fn] of [
['v4',()=>v4({},new Uint8Array(8),4)],
['v5',()=>v5('x',ns,new Uint8Array(8),4)],
['v6',()=>v6({},new Uint8Array(8),4)],
]) {
try { fn(); console.log(name,'NO_THROW'); }
catch(e){ console.log(name,'THREW',e.name); }
}"
Remediation
Upgrade uuid to version 11.1.1, 14.0.0 or higher.