CVE-2026-54447
HighCVSS 8.4Exploitation Probability (EPSS)
Low risk4th percentile - higher than 4% of all known CVEs
Summary
In garminconnect prior to 0.3.5, Client.dump in client.py creates the OAuth token directory and garmin_tokens.json without explicit owner-only modes, so with umask 022 the directory is 0755 and the file is 0644. garmin_tokens.json contains di_refresh_token, which another unprivileged user on a shared Linux/macOS host can read to gain persistent access to the victim's Garmin Connect account.
Risk Assessment
Exposure of the refresh token grants persistent access to the victim's health, fitness, activity, and device data in Garmin Connect. Pre-existing loosely permissioned token files remain exposed as well.
Recommendation
Upgrade garminconnect to version 0.3.5 or later and manually restrict permissions on existing token files and directories (e.g. chmod 600/700).
Related vulnerabilities
- CVE-2026-84999Critical
The Pie Register Premium plugin for WordPress up to and including 3.8.4.0 is vulnerable to unrestricted file type upload via the piereg_file_upload function. File type validation errors are not checked before move_uploaded_file(), and the AJAX handler lacks nonce and capability checks, allowing unauthenticated attackers to upload PHP files and achieve remote code execution.
- CVE-2026-106013Critical
The Jupiter X Core plugin for WordPress (up to and including 4.61.0) is vulnerable to authentication bypass in its Twitter/X social login handler. The verify_twitter_callback function fails to reassign the returned credentials to the TwitterOAuth client, so the subsequent API call remains signed with the site operator's stored token, and the plugin authenticates a WordPress account based solely on the X app owner's email address.
- CVE-2026-110879Critical
A vulnerability in jackson-databind allows bypassing generic-argument validation: only the outer class of a type ID is checked, while attacker-selected classes inside generic arguments are accepted. This enables deserialization of dangerous classes (e.g., HashMap<FileSystemXmlApplicationContext,String>) even with a validator enabled, potentially leading to remote code execution. Affects versions 2.10.0+ and 3.0.0+; it is an incomplete fix for CVE-2026-54512.
- CVE-2026-58256Critical
In GRR prior to version 4.5.0, an administrator can inject malicious PHP through LDAP connector configuration parameters such as `ldap_filter`, poisoning `/personnalisation/config_ldap.inc.php` and enabling remote code execution. The administrator must first successfully connect to an LDAP server, which can be attacker-controlled, and then submit malicious input on the subsequent connector settings page.
- CVE-2026-116692Critical
In MLflow from 3.12.0rc0 until 3.17.0, third-party scorer deserialization in mlflow/genai/scorers/base.py accepts request-selected descendants of allowed modules rather than requiring an exact allowed module. An attacker can place a Python module under a writable allowed package and invoke it via /ajax-api/3.0/mlflow/scorer/invoke, leading to code execution. Version 3.17.0 fixes the issue.
- CVE-2026-112352Critical
Sunhillo SureLine before 9.1.5 contains an authentication bypass vulnerability that allows an unauthenticated remote attacker to impersonate any user with an active web session by forging a session cookie containing only a cleartext username with no random identifier or integrity protection. Attackers can guess default account names such as Admin or sftp_user and submit a forged username cookie to satisfy the login check in checkLogin (libwebcmn.so) and networkDiag.cgi, chaining into root command execution.
- CVE-2026-48360Critical
Adobe Connect is affected by an Improper Control of Generation of Code ('Code Injection') vulnerability that could result in arbitrary code execution in the context of the current user. Exploitation requires user interaction, as a victim must visit a maliciously crafted URL or interact with a compromised web page. Scope is changed.
- CVE-2026-114595Critical
In EPICS Base release 7.0.10 and prior, an integer overflow in network request processing can cause memory to be allocated with an incorrect size. Subsequent handling of attacker-supplied data may result in memory corruption, denial of service, or potential remote code execution.
- CVE-2026-108142Critical
A vulnerability allowing an unauthenticated attacker to bypass authorization on the CDP Coordinator Service. An attacker could gain access to functions or resources they should not be authorized to use without logging in.
- CVE-2026-108015Critical
Private keys for eight eMudhra intermediate CA certificates have been compromised, which impacts certificate trust for outbound network request features of HCL Notes Client. An unauthenticated network attacker could spoof server certificates to execute a man-in-the-middle (MITM) attack, enabling them to intercept and/or modify the content of outbound TLS connections.
Original NVD description (English source)
garminconnect is a Python 3 API wrapper for Garmin Connect that retrieves statistics and manages activities. Prior to 0.3.5, garminconnect/client.py Client.dump creates the OAuth token directory and garmin_tokens.json without explicit owner-only modes, so a permissive umask such as 022 can leave the directory mode at 0755 and the token file mode at 0644. garmin_tokens.json contains di_refresh_token, and another unprivileged user on a shared Linux or macOS host can read the token and obtain persistent access to the victim's Garmin Connect account, including health, fitness, activity, and device data. The Garmin.login tokenstore path is affected, and a pre-existing loosely permissioned token file remains exposed until rewritten or manually restricted. This issue is fixed in version 0.3.5.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

