| CVE ID | CVE-2026-65609 |
| Publication date | 19 August 2026 |
| Vendor | nnn |
| Product | nnn |
| Vulnerable versions | 5.2 |
| Vulnerability type (CWE) | Out-of-bounds write (CWE-787) |
| Report source | Report to CERT Polska |
| CVE ID | CVE-2026-65610 |
| Publication date | 19 August 2026 |
| Vendor | nnn |
| Product | nnn |
| Vulnerable versions | 5.2 |
| Vulnerability type (CWE) | Numeric truncation error (CWE-197) |
| Report source | Report to CERT Polska |
| CVE ID | CVE-2026-65611 |
| Publication date | 19 August 2026 |
| Vendor | nnn |
| Product | nnn |
| Vulnerable versions | 5.2 |
| Vulnerability type (CWE) | Improper neutralization of special elements used in an OS command ('OS command injection') (CWE-78) |
| Report source | Report to CERT Polska |
| CVE ID | CVE-2026-65612 |
| Publication date | 19 August 2026 |
| Vendor | nnn |
| Product | nnn |
| Vulnerable versions | 5.2 |
| Vulnerability type (CWE) | Improper neutralization of special elements used in an OS command ('OS command injection') (CWE-78) |
| Report source | Report to CERT Polska |
Description
CERT Polska has received a report about vulnerabilities in nnn software and participated in coordination of their disclosure.
The vulnerability CVE-2026-65609: nnn is vulnerable to Out-of-Bound write vulnerability. Due to lack of validation of attacker-controlled length fields deserialized from a session file, a crafted session file can cause nnn to write data beyond the bounds of fixed-size global buffers when loaded with the -s option. An attacker who can place a malicious session file in the victim's nnn session directory can exploit this to corrupting neighboring global variables in memory.
The vulnerability CVE-2026-65610: nnn stores homelen variable as uchar_t, which can only represent values in the range 0-255. An attacker who can influence the victim's execution environment can provide an arbitrary HOME path with length that is truncated to 0. The expression (homelen - 1) is promoted to signed int and becomes -1 and producing an out-of-bounds read and an out-of-bounds write one byte before the path buffer.
The vulnerability CVE-2026-65611: nnn does not sanitize the path variable. An attacker can create a directory on a shared filesystem, removable media, or inside an extracted archive whose name contains a single quote followed by shell syntax. If the victim enters that directory in nnn and uses the batch copy or move workflow, the crafted directory name is embedded into the generated shell command and the injected payload executes with the privileges of the nnn process.
The vulnerability CVE-2026-65612: nnn does not sanitize the filename variable. An attacker can place a file with a crafted name on a shared filesystem, removable media, or inside an extracted archive whose name contains a single quote followed by shell syntax. If the victim navigates to that file and opens it with preview-tabbed, the filename is embedded into the generated shell command and the injected payload executes with the privileges of the nnn process.
Maintainer of this project was notified about these vulnerabilities. They might have been addressed, but the maintainer did not provide a vulnerable version range. Only version 5.2 was tested and confirmed as vulnerable.
Credits
We thank Michał Majchrowicz and Marcin Wyczechowski from AFINE Team for the responsible vulnerability report.
More about the coordinated vulnerability disclosure process at CERT Polska can be found at https://cert.pl/en/cvd/.