CVE-2022-29604

9.8 CRITICAL

📋 TL;DR

This vulnerability in ONOS (Open Network Operating System) causes improper handling of case sensitivity in device IDs, leading to misleading CORRUPT state displays for intents with uppercase letters. This creates inconsistency between intent and flow rules, potentially causing network operators to misinterpret network state. It affects ONOS deployments where operators manage network intents.

💻 Affected Systems

Products:
  • ONOS (Open Network Operating System)
Versions: 2.5.1 and potentially earlier versions
Operating Systems: Linux-based systems where ONOS is deployed
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all ONOS deployments using the intent framework with device IDs containing uppercase letters.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Network operators could make incorrect decisions based on misleading CORRUPT state displays, potentially causing network misconfigurations, service disruptions, or security policy bypasses.

🟠

Likely Case

Operational confusion and potential misconfiguration of network intents due to inconsistent state reporting between the intent framework and actual flow rules.

🟢

If Mitigated

Operational inefficiency and potential minor configuration errors that can be corrected through manual verification.

🌐 Internet-Facing: LOW - ONOS is typically deployed in internal network management planes, not directly internet-facing.
🏢 Internal Only: HIGH - This affects core network management functionality that could impact entire network operations.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: NO
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access to ONOS and knowledge of the intent framework. The issue is triggered by normal operational actions with specific device ID formatting.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: ONOS 2.6.0 or later

Vendor Advisory: https://wiki.onosproject.org/display/ONOS/Security+Advisories

Restart Required: Yes

Instructions:

1. Backup current ONOS configuration. 2. Upgrade to ONOS 2.6.0 or later. 3. Restart ONOS services. 4. Verify intent framework functionality.

🔧 Temporary Workarounds

Device ID normalization

all

Enforce lowercase-only device IDs in all intent configurations

# Use lowercase device IDs in all ONOS intent configurations
# Example: deviceId:of:0000000000000001 instead of deviceId:OF:0000000000000001

Intent validation script

linux

Implement pre-deployment validation to detect uppercase letters in device IDs

#!/bin/bash
# Script to validate intent configurations
grep -i "deviceid" intent_config.json | grep -E '[A-Z]' && echo "WARNING: Uppercase detected in device ID"

🧯 If You Can't Patch

  • Implement strict device ID naming conventions (lowercase only) across all network devices
  • Add manual verification step for all intent deployments to cross-check intent state with actual flow rules

🔍 How to Verify

Check if Vulnerable:

Create an intent with a device ID containing uppercase letters and check if it shows CORRUPT state while flow rules are properly installed.

Check Version:

onos-version | grep "ONOS"

Verify Fix Applied:

After patching, test with uppercase device IDs - intents should show correct state (INSTALLED) rather than CORRUPT.

📡 Detection & Monitoring

Log Indicators:

  • Intent state transitions to CORRUPT for device IDs with uppercase letters
  • Mismatch logs between intent framework and flow rule installations

Network Indicators:

  • Inconsistent network behavior for intents with specific device ID patterns

SIEM Query:

source="onos" AND ("CORRUPT" OR "uppercase" OR "deviceId")

🔗 References

📤 Share & Export