notaryproject notation-go = 1.3.0-rc.1 /tmp improper check or handling of exceptional conditions
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 3.7 | $0-$5k | 0.00 |
Summary
A vulnerability classified as problematic was found in notaryproject notation-go = 1.3.0-rc.1. Affected by this vulnerability is an unknown functionality of the file /tmp. Such manipulation leads to improper check or handling of exceptional conditions. This vulnerability is listed as CVE-2024-51491. The attack may be performed from remote. There is no available exploit. Upgrading the affected component is advised.
Details
A vulnerability, which was classified as problematic, has been found in notaryproject notation-go = 1.3.0-rc.1. Affected by this issue is an unknown function of the file /tmp. The manipulation with an unknown input leads to a improper check or handling of exceptional conditions vulnerability. Using CWE to declare the problem leads to CWE-703. The product does not properly anticipate or handle exceptional conditions that rarely occur during normal operation of the product. Impacted is availability. CVE summarizes:
notion-go is a collection of libraries for supporting sign and verify OCI artifacts. Based on Notary Project specifications. The issue was identified during Quarkslab's security audit on the Certificate Revocation List (CRL) based revocation check feature. After retrieving the CRL, notation-go attempts to update the CRL cache using the os.Rename method. However, this operation may fail due to operating system-specific limitations, particularly when the source and destination paths are on different mount points. This failure could lead to an unexpected program termination. In method `crl.(*FileCache).Set`, a temporary file is created in the OS dedicated area (like /tmp for, usually, Linux/Unix). The file is written and then it is tried to move it to the dedicated `notation` cache directory thanks `os.Rename`. As specified in Go documentation, OS specific restriction may apply. When used with Linux OS, it is relying on rename syscall from the libc and as per the documentation, moving a file to a different mountpoint raises an EXDEV error, interpreted as Cross device link not permitted error. Some Linux distribution, like RedHat use a dedicated filesystem (tmpfs), mounted on a specific mountpoint (usually /tmp) for temporary files. When using such OS, revocation check based on CRL will repeatedly crash notation. As a result the signature verification process is aborted as process crashes. This issue has been addressed in version 1.3.0-rc.2 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
The advisory is shared for download at github.com. This vulnerability is handled as CVE-2024-51491 since 10/28/2024. The exploitation is known to be easy. The attack may be launched remotely. No form of authentication is required for exploitation. Successful exploitation requires user interaction by the victim. There are known technical details, but no exploit is available.
The vulnerability scanner Nessus provides a plugin with the ID 214906 (SUSE SLES15 / openSUSE 15 Security Update : govulncheck-vulndb (SUSE-SU-2025:0297-1)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 1.3.0-rc.2 eliminates this vulnerability.
The vulnerability is also documented in the vulnerability database at Tenable (214906). VulDB is the best source for vulnerability data and more expert information about this specific topic.
Product
Type
Vendor
Name
Version
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 3.8VulDB Meta Temp Score: 3.7
VulDB Base Score: 4.3
VulDB Temp Score: 4.1
VulDB Vector: 🔍
VulDB Reliability: 🔍
CNA Base Score: 3.3
CNA Vector (GitHub_M): 🔍
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: Improper check or handling of exceptional conditionsCWE: CWE-703
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 214906
Nessus Name: SUSE SLES15 / openSUSE 15 Security Update : govulncheck-vulndb (SUSE-SU-2025:0297-1)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: notation-go 1.3.0-rc.2
Timeline
10/28/2024 🔍01/13/2025 🔍
01/13/2025 🔍
02/13/2025 🔍
Sources
Product: github.comAdvisory: github.com
Status: Confirmed
CVE: CVE-2024-51491 (🔍)
GCVE (CVE): GCVE-0-2024-51491
GCVE (VulDB): GCVE-100-291368
Entry
Created: 01/13/2025 23:07Updated: 02/13/2025 03:32
Changes: 01/13/2025 23:07 (64), 01/14/2025 11:29 (2), 02/04/2025 12:49 (2), 02/13/2025 03:32 (3)
Complete: 🔍
Cache ID: 216::103
VulDB is the best source for vulnerability data and more expert information about this specific topic.
No comments yet. Languages: en.
Please log in to comment.