CVE-2025-11617

5.4 MEDIUM

📋 TL;DR

A missing validation check in FreeRTOS-Plus-TCP's IPv6 packet processing allows out-of-bounds reads when receiving IPv6 packets with incorrect payload lengths. This vulnerability affects all applications using FreeRTOS-Plus-TCP with IPv6 enabled, potentially exposing embedded IoT devices and systems to information disclosure or denial of service.

💻 Affected Systems

Products:
  • FreeRTOS-Plus-TCP
Versions: All versions before V4.3.4
Operating Systems: Any OS running FreeRTOS-Plus-TCP
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with IPv6 enabled in FreeRTOS-Plus-TCP configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Information disclosure through memory leaks leading to sensitive data exposure, or denial of service causing device/system crashes.

🟠

Likely Case

Denial of service through system instability or crashes when processing malformed IPv6 packets.

🟢

If Mitigated

Limited impact with proper network segmentation and input validation, potentially causing minor performance degradation.

🌐 Internet-Facing: MEDIUM - Devices exposed to IPv6 internet traffic could be targeted with crafted packets, but exploitation requires specific conditions.
🏢 Internal Only: LOW - Internal networks typically have controlled traffic, reducing exposure to malicious IPv6 packets.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires sending specially crafted IPv6 packets to vulnerable systems, but no public exploit code is available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: V4.3.4

Vendor Advisory: https://github.com/FreeRTOS/FreeRTOS-Plus-TCP/security/advisories/GHSA-wmjr-wm93-cvv2

Restart Required: No

Instructions:

1. Download FreeRTOS-Plus-TCP V4.3.4 from GitHub releases. 2. Replace existing FreeRTOS-Plus-TCP source files with patched version. 3. Recompile and redeploy your application. 4. Verify IPv6 packet processing works correctly.

🔧 Temporary Workarounds

Disable IPv6

all

Temporarily disable IPv6 support in FreeRTOS-Plus-TCP configuration if IPv6 is not required.

Set ipconfigUSE_IPv6 to 0 in FreeRTOSIPConfig.h

Network Filtering

all

Implement network filtering to block malformed IPv6 packets at perimeter devices.

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate vulnerable devices from untrusted networks.
  • Deploy intrusion detection/prevention systems to monitor for malformed IPv6 packet patterns.

🔍 How to Verify

Check if Vulnerable:

Check FreeRTOS-Plus-TCP version in your source code or build configuration. If using version before V4.3.4 with IPv6 enabled, you are vulnerable.

Check Version:

Check FreeRTOS-Plus-TCP version in source files or build logs; no single command available as it's embedded source code.

Verify Fix Applied:

Verify the FreeRTOS-Plus-TCP version is V4.3.4 or later in your codebase and that IPv6 packet processing functions include proper length validation.

📡 Detection & Monitoring

Log Indicators:

  • System crashes or restarts when processing IPv6 traffic
  • Memory access violation logs in debug output
  • Unusual IPv6 packet processing errors

Network Indicators:

  • Malformed IPv6 packets with incorrect payload length fields
  • Unusual IPv6 traffic patterns to embedded devices

SIEM Query:

Search for: 'FreeRTOS crash' OR 'IPv6 processing error' OR 'memory violation' in device logs

🔗 References

📤 Share & Export