GNU nano up to 8.x Local Directory Page ~/.local permission assignment

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 3.2 | $0-$5k | 0.00 |
Summary
A vulnerability marked as problematic has been reported in GNU nano up to 8.x. This issue affects some unknown processing of the file ~/.local of the component Local Directory Page. Performing a manipulation results in permission assignment. This vulnerability is cataloged as CVE-2026-40556. The attack must be initiated from a local position. There is no exploit available. It is suggested to upgrade the affected component.
Details
A vulnerability was found in GNU nano up to 8.x. It has been classified as problematic. This affects an unknown code of the file ~/.local of the component Local Directory Page. The manipulation with an unknown input leads to a permission assignment vulnerability. CWE is classifying the issue as CWE-732. The product specifies permissions for a security-critical resource in a way that allows that resource to be read or modified by unintended actors. This is going to have an impact on integrity. The summary by CVE is:
GNU nano creates the user’s ~/.local directory with overly permissive permissions when the directory does not exist yet. On first use of features requiring Cross-Desktop Group (XDG) data storage, nano explicitly requests directory mode 0777, making the directory world‑writable in environments where the process umask does not sufficiently restrict permissions. In systems with a relaxed or zero umask, such as container environments, CI/CD runners, embedded systems, or user shells configured with umask 000, this results in ~/.local being created as world‑writable. A local attacker can exploit a race window between nano’s creation of ~/.local and its subsequent creation of more restrictive subdirectories to write attacker‑controlled files into the victim’s XDG directory hierarchy. This problem was fixed in nano version 9.0
The weakness was shared by Michal Majchrowicz. It is possible to read the advisory at cert.pl. This vulnerability is uniquely identified as CVE-2026-40556 since 04/14/2026. The exploitability is told to be easy. Attacking locally is a requirement. Technical details of the vulnerability are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 324062 (openSUSE 16 Security Update : nano (openSUSE-SU-2026:21166-1)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 9.0 eliminates this vulnerability. Applying a patch is able to eliminate this problem. The bugfix is ready for download at cgit.git.savannah.gnu.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (324062) and EUVD (EUVD-2026-26053). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Vendor
Name
Version
License
Website
- Vendor: https://www.gnu.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒
CVSSv3
VulDB Meta Base Score: 3.3VulDB Meta Temp Score: 3.2
VulDB Base Score: 3.3
VulDB Temp Score: 3.2
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Permission assignmentCWE: CWE-732 / CWE-275 / CWE-266
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: No
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 324062
Nessus Name: openSUSE 16 Security Update : nano (openSUSE-SU-2026:21166-1)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: nano 9.0
Patch: cgit.git.savannah.gnu.org
Timeline
04/14/2026 CVE reserved04/28/2026 Advisory disclosed
04/28/2026 VulDB entry created
07/03/2026 VulDB entry last update
Sources
Vendor: gnu.orgAdvisory: cert.pl
Researcher: Michal Majchrowicz
Status: Confirmed
CVE: CVE-2026-40556 (🔒)
GCVE (CVE): GCVE-0-2026-40556
GCVE (VulDB): GCVE-100-359979
EUVD: 🔒
Entry
Created: 04/28/2026 18:16Updated: 07/03/2026 06:01
Changes: 04/28/2026 18:16 (69), 04/28/2026 20:28 (1), 07/03/2026 06:01 (2)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.