CVE-2026-45698: Netatalk has Integer Underflow → Stack Buffer Overflow in deletedir()
Netatalk is a Free and Open Source file server suite for Unix-like operating systems. In versions 3.1.19 through 4.4.2, a stack-based buffer overflow exists in the deletedir() function of Netatalk's afpd daemon due to an integer underflow in the calculation of the remaining buffer size used for path construction. deletedir() is a utility function called when a file operation crosses a device boundary inside an AFP shared volume, which the standard library's renameat() cannot handle. The function attempts to prevent buffer overflows by tracking available space in a sizet remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZEMAX. Because of this, the subsequent boundary check always evaluates as safe, allowing an unbounded strcpy() operation to copy attacker-controlled filenames into a nearly full stack buffer. Version 4.4.3 patches the issue.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 4.4.3
Event History
Frequently Asked Questions
What is the severity of CVE-2026-45698?
The severity of CVE-2026-45698 is rated high with a score of 7.5.
How do I fix CVE-2026-45698?
To fix CVE-2026-45698, upgrade Netatalk to version 4.4.3 or later.
What causes CVE-2026-45698?
CVE-2026-45698 is caused by an integer underflow in the calculation of the remaining buffer size in the deletedir() function.
What systems are affected by CVE-2026-45698?
CVE-2026-45698 affects Netatalk versions 3.1.19 through 4.4.2 on Unix-like operating systems.
What are the potential impacts of exploiting CVE-2026-45698?
Exploiting CVE-2026-45698 can lead to a stack buffer overflow, potentially allowing arbitrary code execution.