Vulnerabilities

4 via 4 paths

Dependencies

76

Source

GitHub

Find, fix and prevent vulnerabilities in your code.

Severity
  • 2
  • 2
Status
  • 4
  • 0
  • 0

high severity

Server-side Request Forgery (SSRF)

  • Vulnerable module: ip
  • Introduced through: node-ssdp@4.0.1

Detailed paths

  • Introduced through: node-red-contrib-alexa-home@mabunixda/node-red-contrib-alexa-home node-ssdp@4.0.1 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

Server-side Request Forgery (SSRF)

  • Vulnerable module: ip
  • Introduced through: node-ssdp@4.0.1

Detailed paths

  • Introduced through: node-red-contrib-alexa-home@mabunixda/node-red-contrib-alexa-home node-ssdp@4.0.1 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

Server-Side Request Forgery (SSRF)

  • Vulnerable module: ip
  • Introduced through: node-ssdp@4.0.1

Detailed paths

  • Introduced through: node-red-contrib-alexa-home@mabunixda/node-red-contrib-alexa-home node-ssdp@4.0.1 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
new

Improper Validation of Specified Index, Position, or Offset in Input

  • Vulnerable module: uuid
  • Introduced through: uuid@10.0.0

Detailed paths

  • Introduced through: node-red-contrib-alexa-home@mabunixda/node-red-contrib-alexa-home uuid@10.0.0
    Remediation: 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.

References