☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Netatalk logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 7.1 🐛 CWE-125
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-44066

CVE-2026-44066 Out-of-Bounds Access in Netatalk
📅 PUBLISHED: 2026-05-21 08:16 UTC 🔄 UPDATED: 2026-10-02 19:32 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.49%
👁️
0.49% probability
12.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1499
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
License: Open Source
Patch available — upgrade to latest release
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
7.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-44066 is a heap-based out-of-bounds read vulnerability in the Spotlight RPC unmarshalling code of Netatalk, an open-source implementation of the Apple Filing Protocol (AFP). Affecting versions 3.1.0 through 4.4.2, this flaw allows a remote authenticated attacker to read sensitive memory contents or cause a minor service disruption. The vulnerability resides in the parsing of Spotlight RPC requests, where insufficient bounds checking leads to out-of-bounds reads from heap memory. With a CVSS score of 7.1, the primary impact is confidentiality (high), with a limited availability impact. No public exploit code or patch is currently available, making this a high-priority issue for organizations using Netatalk in production environments.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

Netatalk is not distributed via NPM, PyPI, Go, or Ruby registries. It is typically installed via Linux package managers (e.g., apt, yum) or compiled from source. Organizations should monitor their package repositories for updates and consider manual patching or mitigation until an official fix is released.

CVSS Breakdown & Threat Level

  • CVSS Score: 7.1 (High)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:L
  • Attack Vector: Network (AV:N) – Exploitable remotely.
  • Attack Complexity: Low (AC:L) – No special conditions required.
  • Privileges Required: Low (PR:L) – Attacker needs valid AFP credentials.
  • User Interaction: None (UI:N) – No user action needed.
  • Scope: Unchanged (S:U) – Vulnerability does not cross trust boundaries.
  • Confidentiality Impact: High (C:H) – Potential leakage of sensitive heap data.
  • Integrity Impact: None (I:N) – No data modification possible.
  • Availability Impact: Low (A:L) – Minor service disruption (e.g., crash of the Spotlight process).

Threat Level: High. While authentication is required, the low complexity and high confidentiality impact make this a serious risk for environments where Netatalk is exposed to untrusted networks.

Deep Dive & Mechanics

The vulnerability exists in the Spotlight RPC unmarshalling code within Netatalk's afpd daemon. Spotlight RPC is used for file metadata indexing and search queries. The unmarshalling process decodes serialized data from network requests into internal structures.

Root Cause: When parsing variable-length fields (e.g., strings or arrays) in Spotlight RPC messages, the code fails to validate that the declared length does not exceed the actual buffer size. This allows an attacker to craft a request with a manipulated length field, causing the unmarshalling function to read beyond the allocated heap buffer.

Technical Flow:

  1. An authenticated client sends a crafted Spotlight RPC request to the AFP server (port 548).
  2. The afpd daemon receives the request and passes it to the Spotlight unmarshalling routine.
  3. The routine reads a length field from the request and uses it to copy data into a heap buffer.
  4. Due to missing bounds checks, the routine reads length bytes from the heap buffer, even if length exceeds the buffer's actual size.
  5. This results in an out-of-bounds read, potentially leaking adjacent heap memory or causing a segmentation fault.

Impact: An attacker can leak sensitive information such as other users' file metadata, passwords, or cryptographic keys stored in heap memory. The availability impact is limited to the Spotlight process, which may crash and restart.

Vulnerable vs. Patched Code

The vulnerable code is in the Spotlight RPC unmarshalling function, typically located in libatalk/spotlight/rpc.c or similar. The following pseudocode illustrates the flaw:

Vulnerable Code (Netatalk 3.1.0 - 4.4.2):

void unmarshal_string(uint8_t *buffer, size_t bufsize, char **out) {
    uint32_t length;
    memcpy(&length, buffer, sizeof(length)); // No validation
    *out = malloc(length + 1);
    memcpy(*out, buffer + 4, length); // Out-of-bounds read if length > bufsize - 4
    (*out)[length] = '\0';
}

Patched Code (Hypothetical Fix):

void unmarshal_string(uint8_t *buffer, size_t bufsize, char **out) {
    uint32_t length;
    if (bufsize < sizeof(length)) {
        // Handle error
        return;
    }
    memcpy(&length, buffer, sizeof(length));
    if (length > bufsize - sizeof(length)) {
        // Bounds check: reject oversized length
        return;
    }
    *out = malloc(length + 1);
    memcpy(*out, buffer + 4, length);
    (*out)[length] = '\0';
}

The fix adds a check to ensure length does not exceed the remaining buffer size before performing the copy.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • Valid AFP credentials (username/password).
  • Network access to the AFP server (port 548).
  • Netatalk version 3.1.0 through 4.4.2.

Exploitation Steps:

  1. Reconnaissance: Scan for AFP servers using Shodan or Nmap:
    nmap -p 548 --script afp-server-info <target>
    
  2. Craft Payload: Create a malicious Spotlight RPC request with an oversized length field. Example using Python:
    import socket
    import struct
    
    def exploit(host, port, username, password):
        # Authenticate (simplified)
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.connect((host, port))
        # ... AFP authentication steps ...
    
        # Craft Spotlight RPC request
        payload = b'\x00\x01\x00\x02'  # Header
        payload += struct.pack('>I', 0xFFFFFFFF)  # Oversized length
        payload += b'A' * 100  # Padding
        sock.send(payload)
        response = sock.recv(4096)
        print("Response:", response)
        sock.close()
    
  3. Trigger Vulnerability: Send the crafted request. The server may respond with leaked heap data or crash.

Note: No public exploit code is available. The above is a conceptual example.

Blue Team (Detection & Defense)

Detection:

  • Monitor AFP traffic for anomalous Spotlight RPC requests with unusually large length fields.
  • Use the Sigma and Suricata rules provided in the Detection Engineering section.

Defense:

  • Restrict AFP access to trusted IPs using firewall rules.
  • Disable Spotlight functionality if not needed:
    # In afp.conf
    [Global]
    spotlight = no
    
  • Apply the principle of least privilege for AFP users.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • AFP packets with Spotlight RPC requests containing length fields > 65535 bytes.
    • Repeated connections from the same IP to port 548 with malformed data.
  • Host IOCs:
    • Crash logs in /var/log/messages or /var/log/afpd.log containing "Segmentation fault" or "heap corruption" in the Spotlight process.
    • Core dumps from afpd or spotlight processes.
  • File IOCs:
    • Temporary files in /tmp/ with suspicious names (e.g., spotlight_*).

Detection Engineering

YARA Rule

rule CVE_2026_44066_Spotlight_OOB_Read {
    meta:
        description = "Detects heap out-of-bounds read in Netatalk Spotlight RPC"
        author = "Valters IT"
        date = "2025-04-10"
        cve = "CVE-2026-44066"
    strings:
        $spotlight_header = { 00 01 00 02 }  // Spotlight RPC header
        $large_length = { FF FF FF FF }       // Oversized length field
    condition:
        $spotlight_header at 0 and $large_length at 4
}

Sigma Rule

title: Netatalk Spotlight RPC Out-of-Bounds Read Attempt
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects network traffic attempting to exploit CVE-2026-44066
author: Valters IT
date: 2025-04-10
logsource:
    category: network_connection
    product: suricata
detection:
    selection:
        dest_port: 548
        app_protocol: afp
        payload|contains: '00010002FFFFFFFF'
    condition: selection
falsepositives:
    - Legitimate large Spotlight queries (rare)
level: high

Suricata Rule

alert tcp $EXTERNAL_NET any -> $HOME_NET 548 (msg:"CVE-2026-44066 Netatalk Spotlight RPC OOB Read Attempt"; flow:to_server,established; content:"|00 01 00 02|"; depth:4; content:"|FF FF FF FF|"; distance:0; within:4; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable Spotlight if not required:
    [Global]
    spotlight = no
    
  2. Restrict network access to AFP port 548 using firewall rules.
  3. Monitor logs for suspicious activity.

Long-Term Fix:

  • Apply the official patch once released by the Netatalk project.
  • Upgrade to a patched version (currently none available).
  • Consider using a different file sharing protocol (e.g., SMB) until a fix is available.

Workaround:

  • Implement a Web Application Firewall (WAF) or IDS/IPS rule to block oversized Spotlight RPC requests.

Valters IT
Securing Digital Frontiers

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-44066/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.