← Back to Feed CACHED · 2026-08-06 16:24:06 · CACHE_KEY CVE-2026-64564
CVE-2026-64564 · CWE-416 · Disclosed 2026-08-04

In the Linux kernel

ASSESSED — NOISGATE V0.5
Vendor
Reassessed
Verdict:
Do you agree?
01 · The Real Story

Like leaving a trap door in a room nobody enters — the kernel flaw is real but SCTP is a ghost protocol on most fleets

CVE-2026-64564 is a use-after-free vulnerability in the Linux kernel's SCTP (Stream Control Transmission Protocol) ASCONF chunk processor. The function sctp_process_asconf() caches the current transport pointer in asconf->transport. An attacker can craft a malicious ASCONF block that specifies an Address Parameter pointing to address L, then issues a DEL-IP for L (which passes the RFC 5061 D8 source-address protection check because L is *not* the packet's source address), followed by a wildcard DEL-IP (0.0.0.0). The first DEL-IP calls sctp_assoc_rm_peer() which frees the transport cached in asconf->transport, leaving a dangling pointer. Subsequent ASCONF parameter processing dereferences freed memory, planting dangling pointers into asoc->peer.primary_path and active_path. The bug affects any kernel with CONFIG_IP_SCTP compiled in or loaded as a module. The fix landed in the net-next tree (commit 9b2854f) on approximately 2026-08-04 and is pending stable backports.

There is no vendor CVSS score for this CVE yet — NVD has not scored it as of 2026-08-07. The use-after-free primitive is genuinely dangerous: kernel UAFs in network protocol handlers have historically been weaponizable for remote code execution or at minimum denial of service via kernel panic. However, the severity is fundamentally gated by the fact that SCTP is blacklisted by default on RHEL, RHCOS, and most hardened enterprise distributions. The module must be explicitly loaded, and an active SCTP association must exist for the attacker to deliver the crafted ASCONF chunk. For the vast majority of enterprise fleets, this vulnerability has zero exposure.

"Remote SCTP use-after-free is serious in theory but the protocol is blacklisted by default on enterprise Linux."
02 · The Attack Path

3 steps from start to impact.

STEP 01

SCTP module must be loaded and association active

The attacker needs a target host running the SCTP kernel module (sctp.ko) with at least one active SCTP association. SCTP is used primarily in telecom (SS7/SIGTRAN, Diameter), some Kubernetes bare-metal CNI configurations, and WebRTC signaling. The attacker must be able to send SCTP packets to this host on a port with an active association.
Conditions required:
  • Target kernel has CONFIG_IP_SCTP=y or sctp.ko loaded
  • Active SCTP association exists on target
  • Network reachability to SCTP port
Where this breaks in practice:
  • SCTP is blacklisted by default on RHEL 8+, RHCOS, and CIS-hardened distros
  • Most enterprise servers never load the SCTP module
  • Firewalls rarely permit SCTP (IP protocol 132) through perimeter
Detection/coverage: Running lsmod | grep sctp or checking /proc/net/sctp/assocs identifies exposed hosts. Nmap SCTP INIT scan (nmap -sY) can detect listening SCTP endpoints.
STEP 02

Craft malicious ASCONF chunk with DEL-IP sequence

The attacker constructs an SCTP ASCONF chunk containing three sequential parameters: (1) an Address Parameter pointing to address L (a secondary address bound to the association), (2) a DEL-IP parameter targeting address L, and (3) a wildcard DEL-IP parameter targeting 0.0.0.0. The DEL-IP for L passes the RFC 5061 Section D8 check because L is not the source address of the packet. No public PoC or weaponized tool is currently available.
Conditions required:
  • Knowledge of a secondary bound address (L) on the target association
  • Ability to craft raw SCTP packets
Where this breaks in practice:
  • Requires knowledge of association state (VTAG, secondary addresses)
  • No public PoC exists as of 2026-08-07
  • SCTP ASCONF requires the ASCONF capability to be negotiated during association setup
Detection/coverage: Deep packet inspection on SCTP traffic could flag ASCONF chunks containing sequential DEL-IP parameters targeting non-source addresses followed by wildcard deletions.
STEP 03

Use-after-free triggers kernel panic or code execution

When the ASCONF processor reaches the wildcard DEL-IP (step 3 in the chunk), it attempts to use asconf->transport — which was freed by the first DEL-IP's call to sctp_assoc_rm_peer(). This dereferences freed memory. The immediate impact is a kernel panic (denial of service). Exploitation for arbitrary code execution would require heap grooming to reclaim the freed transport structure with attacker-controlled data — possible but non-trivial in the kernel SCTP allocator context.
Conditions required:
  • Steps 1 and 2 completed successfully
Where this breaks in practice:
  • Kernel heap layout makes reliable code execution difficult without significant exploit development
  • KASLR, SMEP, SMAP, and kCFI on modern kernels raise the exploitation bar
  • Kernel panic (DoS) is the most likely outcome, not clean code execution
Detection/coverage: Kernel crash dumps showing panic in sctp_process_asconf or sctp_process_asconf_param with a freed transport pointer. kdump/crash analysis would show the UAF signature.
03 · Intelligence Metadata

The supporting signals.

In-the-Wild ExploitationNo known exploitation. Not listed on CISA KEV. No campaigns or threat actor usage reported as of 2026-08-07.
Proof-of-ConceptNo public PoC available. The vulnerability was disclosed via kernel patch commit with technical details sufficient to write a PoC, but none has been published on GitHub, Exploit-DB, or security research channels.
EPSS Score0.00157 (bottom ~15th percentile) — reflects extremely low predicted exploitation probability within 30 days.
KEV StatusNot listed. No CISA KEV entry as of 2026-08-07.
CVSS VectorNo vendor score assigned. noisgate estimated vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H (DoS baseline ~5.9). If code execution is proven feasible, this shifts to ~8.1.
Affected VersionsAll Linux kernel versions with CONFIG_IP_SCTP support. The bug likely dates back to early ASCONF implementations (kernel 2.6.x era). Specific affected stable branches pending confirmation from kernel.org stable maintainers.
Fixed VersionsFix committed to net-next tree (commit 9b2854f, author Jun Yang, ~2026-08-04). No stable backports released yet as of 2026-08-07. Distro packages (RHEL, Ubuntu, SUSE) have not yet shipped fixes.
Scanning/Exposure DataSCTP endpoints are rare on the public internet. Shodan queries for SCTP services return orders of magnitude fewer results than TCP/UDP equivalents. Internal telecom networks are the primary exposure surface.
Disclosure Date2026-08-04 — disclosed via kernel patch to net-next tree.
ReporterJun Yang — kernel contributor, via net-next patch submission.
04 · The Call

noisgate verdict.

Final Verdict
= UNCHANGED to MEDIUM (5.5/10)

The single most decisive factor is the near-zero exposure population: SCTP is blacklisted by default on RHEL 8+ and most CIS-hardened enterprise Linux distributions, meaning fewer than 1-2% of a typical 10,000-host fleet will have the module loaded with active associations. While the use-after-free primitive is technically dangerous, the vanishing attack surface makes fleet-wide risk negligible outside telecom-specific environments.

HIGH Attack surface analysis (SCTP default-off on enterprise distros)
MEDIUM Impact ceiling (UAF → DoS confirmed, RCE theoretical)
LOW Affected version range (exact introduction commit not confirmed)

Why this verdict

  • Attack surface gating: SCTP is blacklisted by default on RHEL 8+, RHCOS, and CIS-benchmarked systems. The kernel module must be explicitly loaded and an active SCTP association must exist. This eliminates >95% of a typical enterprise fleet from exposure.
  • No exploitation evidence: EPSS is 0.00157, no KEV listing, no public PoC, no known campaigns. The vulnerability was disclosed 3 days ago with the fix, limiting attacker lead time.
  • Exploitation complexity: Even when SCTP is active, the attacker needs knowledge of association state (VTAG, secondary bound addresses) and must negotiate ASCONF capability. Kernel heap grooming for RCE adds further complexity beyond the trivial DoS/panic outcome.
  • Role multiplier: (a) *Low-value role (workstations, dev machines):* SCTP never loaded — not affected. (b) *Typical role (app servers, web servers):* SCTP not loaded — not affected. (c) *High-value role (telecom core, Diameter nodes, some k8s bare-metal with SCTP CNI):* Chain succeeds, blast radius is host-level DoS or potential host compromise. However, this high-value role represents well under 1% of the general Linux installed base. Telecom-specific fleets where SCTP is canonical should treat this as HIGH.
  • Network friction: Perimeter firewalls and cloud security groups almost never permit IP protocol 132 (SCTP) inbound. Even where SCTP is used internally, it is typically isolated to dedicated telecom network segments.

Why not higher?

Elevating to HIGH would require either (a) active exploitation / KEV listing, (b) a public PoC lowering the exploitation bar, or (c) evidence that ≥1% of the general enterprise Linux installed base runs active SCTP associations. None of these conditions are met. The high-value role (telecom infrastructure) where the chain succeeds represents a specialized vertical, not a general enterprise deployment pattern. SCTP's default-blacklisted status on major enterprise distros is a hard architectural gate.

Why not lower?

Dropping to LOW or IGNORE would understate the technical severity of a remotely-triggerable use-after-free in a kernel network protocol handler. Where SCTP IS active (telecom, some k8s), the bug is trivially reachable with a crafted packet and results in at minimum a kernel panic. The fix is not yet in any stable kernel release or distro package, so affected hosts have no patch available. The 3-day-old disclosure means the window is still open for PoC development.

05 · Compensating Control

What to do — in priority order.

  1. Blacklist the SCTP kernel module on all non-telecom hosts — Add install sctp /bin/false and blacklist sctp to /etc/modprobe.d/sctp-blacklist.conf. This is already the RHEL 8+ default and CIS benchmark recommendation. Confirm and enforce across your fleet within the noisgate MEDIUM remediation window (365 days), though given this is a one-line config change, there's no reason not to do it this week.
  2. Audit which hosts have SCTP loaded — Run lsmod | grep sctp and check /proc/net/sctp/assocs across your fleet. Any host with active SCTP associations is in the blast radius. Prioritize patching those hosts once stable backports ship.
  3. Block SCTP at network boundaries — Ensure firewalls and security groups drop IP protocol 132 (SCTP) at perimeter and inter-zone boundaries. This prevents external exploitation entirely. Most enterprise firewalls already do this by default since they only permit TCP/UDP/ICMP.
  4. For telecom hosts: disable ASCONF capability if operationally feasible — If your SCTP applications don't require dynamic address reconfiguration, disable ASCONF negotiation at the application layer. This prevents the ASCONF chunk processing path from being reached. Consult your application vendor (e.g., Diameter, SS7 stack) for configuration guidance.
What doesn't work
  • SELinux / AppArmor — These MAC frameworks operate above the kernel network stack and do not prevent kernel-level UAF exploitation in SCTP chunk processing. The vulnerability triggers inside the kernel before any userspace policy can intervene.
  • Network-level IDS/IPS with TCP-only inspection — Most IDS signatures focus on TCP/UDP. SCTP (IP protocol 132) often passes through uninspected. You need SCTP-aware deep packet inspection to detect malicious ASCONF chunks.
  • Disabling SCTP sysctl parameters — There is no sysctl to disable ASCONF processing specifically. The only reliable control is unloading/blacklisting the entire SCTP module.
06 · Verification

Crowdsourced verification payload.

Run this script on each target host as root (or via your fleet management tool). It checks whether the SCTP module is loaded and whether active SCTP associations exist. Example: sudo bash check_cve_2026_64564.sh

noisgate-verify.sh
BASHREAD-ONLYSAFE
#!/bin/bash
# check_cve_2026_64564.sh — Check exposure to CVE-2026-64564
# SCTP ASCONF DEL-IP use-after-free
# Run as root on target Linux hosts.
# Exit codes: 0=VULNERABLE, 1=PATCHED, 2=UNKNOWN

set -euo pipefail

RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m'

# Check if SCTP module is loaded or compiled-in
SCTP_LOADED=0
if lsmod 2>/dev/null | grep -q '^sctp '; then
    SCTP_LOADED=1
elif [ -f /proc/net/sctp/assocs ] 2>/dev/null; then
    SCTP_LOADED=1
elif grep -q 'CONFIG_IP_SCTP=y' /boot/config-$(uname -r) 2>/dev/null; then
    SCTP_LOADED=1
fi

if [ "$SCTP_LOADED" -eq 0 ]; then
    echo -e "${GREEN}PATCHED${NC} (not affected) — SCTP module is not loaded and not compiled-in."
    echo "CVE-2026-64564 requires SCTP to be active. This host has no exposure."
    exit 1
fi

# SCTP is loaded — check for active associations
ACTIVE_ASSOCS=0
if [ -f /proc/net/sctp/assocs ]; then
    # First line is header, count data lines
    ASSOC_COUNT=$(tail -n +2 /proc/net/sctp/assocs 2>/dev/null | wc -l)
    if [ "$ASSOC_COUNT" -gt 0 ]; then
        ACTIVE_ASSOCS=1
    fi
fi

# Check kernel version for fix (placeholder — stable backport versions TBD)
KERNEL=$(uname -r)
echo "Kernel: $KERNEL"
echo "SCTP module: loaded/compiled-in"

if [ "$ACTIVE_ASSOCS" -eq 1 ]; then
    echo -e "${RED}VULNERABLE${NC} — SCTP is loaded with $ASSOC_COUNT active association(s)."
    echo "This host is exposed to CVE-2026-64564 until a patched kernel is installed."
    echo "Active associations:"
    cat /proc/net/sctp/assocs 2>/dev/null
    exit 0
else
    echo -e "${YELLOW}UNKNOWN${NC} — SCTP module is loaded but no active associations found."
    echo "Host is potentially vulnerable if SCTP associations are established later."
    echo "Recommend blacklisting SCTP module if not needed: echo 'install sctp /bin/false' > /etc/modprobe.d/sctp-blacklist.conf"
    exit 2
fi
07 · Bottom Line

If you remember one thing.

TL;DR
For a general enterprise fleet, this is a MEDIUM with no mitigation SLA — go straight to the 365-day noisgate remediation SLA. The practical Monday-morning action is to verify SCTP is blacklisted across your fleet (it should be by default on RHEL 8+/CIS-hardened systems) and confirm with a quick lsmod | grep sctp sweep. Any hosts that DO have SCTP loaded with active associations — typically telecom or specialized k8s nodes — should be treated as HIGH in your internal risk register with a 30-day noisgate mitigation SLA: block SCTP at network boundaries and plan to patch once stable kernel backports ship (expected within 1-2 weeks). No public PoC exists yet, giving you a window, but the technical details in the commit are sufficient for a skilled attacker to develop one. Monitor linux-stable mailing lists and your distro's security tracker for backport availability.

Sources

  1. openKylin Security Advisory — CVE-2026-64564
  2. Red Hat — How to setup SCTP in RHEL 8+
  3. Linux Kernel SCTP Documentation
  4. Linux kernel net-next repository (fix location)
  5. CVE-2021-23133 — Prior SCTP UAF privilege escalation (historical reference)
  6. OpenShift — Using SCTP on bare metal clusters
  7. NIST NVD Dashboard
Peer Review

What defenders are saying.

Submit a review attribution: handle + country only
0 flags selected · stored anonymously
Validation Results

Crowdsourced verification outputs.

Results submitted by users who ran the verification payload against their environment.