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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
CVE-2026-45698- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-191
- Updated
- 2026-11-02
EUVDEUVD-2026-60326
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
EUVD-2026-60326- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
NVD
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
CVE-2026-45698- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-191
- Updated
- 2026-11-02
OSVALPINE-CVE-2026-45698
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
ALPINE-CVE-2026-45698- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
OSV
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
CVE-2026-45698- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-191
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-45698
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
DEBIAN-CVE-2026-45698- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-45698
7.5
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 size_t remain variable. However, the arithmetic used to compute remain results in an unsigned integer underflow, causing the variable to become SIZE_MAX. 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.
- Record
UBUNTU-CVE-2026-45698- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
netatalkAlpine:v3.24 |
before 4.4.3-r0 | 4.4.3-r0 |
netatalkDebian:13 |
before 4.2.3~ds-1+deb13u2, plus listed versions 4.2.3~ds-14.2.3~ds-1+deb13u1 |
4.2.3~ds-1+deb13u2 |
netatalkDebian:14 |
before 4.4.3~ds-1, plus listed versions 4.2.3~ds-14.2.3~ds-24.2.3~ds-2.14.4.1~ds-14.4.2~ds-1 |
4.4.3~ds-1 |
netatalkUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 2.2.2-1ubuntu12.2.2-1ubuntu22.2.2-1ubuntu2.22.2.2-1ubuntu2.2+esm12.2.2-1ubuntu2.2+esm22.2.2-1ubuntu2.2+esm32.2.2-1ubuntu2.2+esm4 |
None known |
netatalkUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 2.2.5-12.2.5-1ubuntu0.22.2.5-1ubuntu0.2+esm12.2.5-1ubuntu0.2+esm22.2.5-1ubuntu0.2+esm32.2.5-1ubuntu0.2+esm4 |
None known |
netatalkUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 2.2.6-12.2.6-1ubuntu0.18.04.22.2.6-1ubuntu0.18.04.2+esm12.2.6-1ubuntu0.18.04.2+esm22.2.6-1ubuntu0.18.04.2+esm32.2.6-1ubuntu0.18.04.2+esm4 |
None known |
netatalkUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 3.1.12~ds-33.1.12~ds-43.1.12~ds-4ubuntu0.20.04.13.1.12~ds-4ubuntu0.20.04.33.1.12~ds-4ubuntu0.20.04.3+esm13.1.12~ds-4ubuntu0.20.04.43.1.12~ds-4ubuntu0.20.04.4+esm13.1.12~ds-4ubuntu0.20.04.4+esm2 |
None known |
netatalkUbuntu:Pro:22.04:LTS |
All versions, plus listed versions 3.1.12~ds-93.1.12~ds-9build13.1.12~ds-9ubuntu0.22.04.13.1.12~ds-9ubuntu0.22.04.33.1.12~ds-9ubuntu0.22.04.3+esm13.1.12~ds-9ubuntu0.22.04.43.1.12~ds-9ubuntu0.22.04.4+esm13.1.12~ds-9ubuntu0.22.04.4+esm2 |
None known |
netatalkUbuntu:Pro:24.04:LTS |
All versions, plus listed versions 3.1.15~ds-1ubuntu13.1.18~ds-13.1.18~ds-1build23.1.18~ds-1build43.1.18~ds-1ubuntu0.1~esm13.1.18~ds-1ubuntu0.1~esm23.1.18~ds-1ubuntu0.1~esm3 |
None known |
netatalkUbuntu:25.10 |
All versions, plus listed versions 4.1.2~ds-44.2.1~ds-14.2.3~ds-1 |
None known |
netatalkUbuntu:26.10 |
All versions, plus listed versions 4.2.3~ds-2.14.4.3~ds-14.5.0~ds-34.5.1~ds-1 |
None known |
netatalkUbuntu:26.04:LTS |
All versions, plus listed versions 4.2.3~ds-14.2.3~ds-24.2.3~ds-2.14.2.3~ds-2.1ubuntu0.14.2.3~ds-2.1ubuntu0.2 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, references | OSV | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-45698 is a high vulnerability (CVSS 7.5) in Netatalk, published August 17, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.45%, the 39th percentile. Fixed in netatalk 4.4.3-r0.
References
github.com/Netatalk/netatalk/security/advisories/GHSA-5443-v9xg-mqgv
github.com/Netatalk/netatalk/releases/tag/netatalk-4-4-3
security.alpinelinux.org/vuln/CVE-2026-45698
github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45698.json
nvd.nist.gov/vuln/detail/CVE-2026-45698
security-tracker.debian.org/tracker/CVE-2026-45698
ubuntu.com/security/CVE-2026-45698
cve.org/CVERecord?id=CVE-2026-45698
netatalk.io/security/CVE-2026-45698