Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Tugtainer web UI
-
DeliveryPOST crafted urls to /settings/test_notification
-
ExploitApprise issues outbound request to internal/metadata target
-
ExecutionProbe private services blind
-
ImpactMap internal network / reach cloud metadata
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated Tugtainer session (PR:L) with access to the notification settings; the vulnerable path is the /settings/test_notification endpoint's urls field, which pre-1.30.6 is passed straight to Apprise with NO scheme/host/IP filtering in the default configuration (the new NOTIFICATION_ALLOW_* env vars and RESTRICTED_NETWORKS deny-list did not exist before the patch). Exploitation is LIMITED by: (1) mandatory authentication - this is not exposed to anonymous internet users; (2) the blind nature - no response data is returned, so pure data exfiltration from metadata endpoints is constrained to what can be inferred indirectly; (3) the attacker needs network reachability from the Tugtainer backend to the intended internal/metadata target. Any deployment on version <1.30.6 with default settings is affected regardless of platform. |
| Impact | Signals conflict on severity. The vendor CVSS of 9.1 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L) is inflated for what the description explicitly calls a *blind* SSRF: if the response body is never returned to the attacker, C:H is not justified - realistic confidentiality impact is C:L at most, so the practical severity is closer to high-7 than critical-9. The vector's PR:L is consistent with the description's 'authenticated user' requirement, meaning this is not an unauthenticated internet-facing flaw. There is no EPSS score, no CISA KEV listing, and no public exploit identified at time of analysis, so this is not a validated widespread-exploitation priority. SSVC-wise: exploitation is not observed, the technique is automatable in principle (simple POST to a known endpoint), but technical impact is partial given the blind constraint and single-privilege gate. Net: a legitimate bug worth patching, but the raw 9.1 overstates real-world urgency for a niche self-hosted homelab tool that requires an authenticated session. |
| Exploit ScenarioDerived | An attacker who already holds a valid Tugtainer login (or a low-privileged operator account) sends a POST to /settings/test_notification with a urls value pointing at an internal address such as http://169.254.169.254/latest/meta-data/ or a private-range service. The backend forwards the request via Apprise, letting the attacker probe internal hosts, cloud metadata endpoints, and private services from the server's network position. Because the SSRF is blind, the attacker infers reachability from timing/error behavior rather than reading responses; no public exploit code is identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 30, 2026
Authenticated server-side request forgery in Tugtainer before version 1.30.6 allows any logged-in user with access to notification settings to make the backend send outbound HTTP requests to attacker-chosen URLs through the /settings/test_notification endpoint, reaching localhost, RFC1918 ranges, and cloud metadata addresses such as 169.254.169.254. The urls field is passed directly to the Apprise notification library with no scheme, hostname, private-IP, or metadata filtering in the default configuration, and because responses are not returned to the caller the attack is blind, which limits it to internal port scanning, service probing, and indirect information inference rather than straightforward data exfiltration. Our independent assessment agrees with the SSRF class and the authentication prerequisite (PR:L) but rates the CIA impact lower (C:L/I:L/A:L) than the vendor's 9.1 scoring, so the practical severity sits below the headline score; vendor-released patch: 1.30.6, and no public exploit identified at time of analysis, with no CISA KEV listing.
RemediationAI
Upgrade Tugtainer to version 1.30.6 or later, the vendor-released patch documented in the GitHub security advisory GHSA-c2h5-ppv9-7vrq and published at the v1.30.6 release tag; the fix corresponds to upstream commit c0294d0a, which introduces a URL validation layer plus a RESTRICTED_NETWORKS deny-list and applies validation both when notification URLs are saved and when the test-notification endpoint is called. If an immediate upgrade is not possible, apply compensating controls: restrict who holds authenticated Tugtainer accounts and remove unused ones, since exploitation requires PR:L and access to the notification settings; block external reachability of the Tugtainer web UI and API so only trusted admin networks can reach /settings/test_notification; enforce container egress filtering (for example deny traffic from the Tugtainer container to 169.254.169.254/32, 127.0.0.0/8, and RFC1918 ranges) - noting the trade-off that this will also break any legitimate notifications or integrations that target internal endpoints; and avoid running the container with host networking or unnecessary privileges so the blast radius of a successful SSRF is smaller. After upgrading, harden the new configuration by setting NOTIFICATION_ALLOW_SCHEMES to only the schemes actually used (for example tgram,discord) and NOTIFICATION_ALLOW_NETWORKS or the more precise NOTIFICATION_ALLOW_ENDPOINTS to an explicit allow-list, keeping in mind that leaving these empty relies on the built-in private-network deny-list rather than a positive allow-list. No vendor-released patch was identified for versions below 1.30.6 because the fix is delivered as part of that release rather than as a backport, so the upgrade path is the release itself.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is CWE-918 (Server-Side Request Forgery) in Tugtainer's Python backend, a self-hosted Docker container update automation service. Pre-1.30.6, the settings router accepted a urls field on the test_notification endpoint (and on notification URL settings changes) and forwarded it to Apprise for notification dispatch. Apprise supports a broad set of URL schemes and will perform outbound fetches/connections to the supplied destination, so without validation the backend becomes a proxy for requests originating from inside the Tugtainer host or container network namespace. The patched commit (c0294d0a) adds a URL validation layer used both when settings are changed and when the test-notification endpoint is invoked, plus a RESTRICTED_NETWORKS deny-list in const.py covering IPv4 loopback (127.0.0.0/8), 0.0.0.0/8, RFC1918 space (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), link-local 169.254.0.0/16, carrier-grade NAT 100.64.0.0/10, multicast 224.0.0.0/4, reserved 240.0.0.0/4, IPv6 loopback ::1/128, unspecified ::/128, ULA fc00::/7, link-local fe80::/10, and IPv4-mapped IPv6 (::ffff:0:0/96) - the latter specifically closing the classic ::ffff:127.0.0.1 bypass. New configuration variables NOTIFICATION_ALLOW_SCHEMES, NOTIFICATION_ALLOW_NETWORKS, and NOTIFICATION_ALLOW_ENDPOINTS provide operator-controlled allow-listing, with defaults that block local and private networks and permit all schemes when unset. The CPE cpe:2.3:a:quenary:tugtainer:* indicates the advisory treats all versions before the fix as in scope.
Know when Tugtainer gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L
Authenticated (PR:L) network POST triggers server-side requests to other systems (S:C); blind SSRF yields only limited confidentiality (C:L, not H), with minor integrity/availability effects on reached internal services.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Tugtainer is a self-hosted app for automating updates of Docker containers. Prior to version 1.30.6, Tugtainer allows an authenticated user to make the backend server send outbound HTTP requests to arbitrary user-supplied URLs through the notification test endpoint. The /settings/test_notification endpoint accepts a urls field and passes it directly to Apprise without restricting protocols, hostnames, localhost addresses, private IP ranges, or cloud metadata addresses. This can be abused as an authenticated blind server-side request forgery (SSRF). This issue has been patched in version 1.30.6.
Articles & Coverage 1
Technical POC Analysis
CWE-918 Server-Side Request Forgery (SSRF).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
CVE-2026-62308 allows any authenticated Tugtainer user with access to notification settings to make the product's own server issue requests to internal-only addresses, including private network ranges and cloud instance metadata endpoints. Because the attack is blind and gated behind valid credentials, the practical exposure is internal reconnaissance rather than direct theft of data, but that reconnaissance can surface other systems or cloud credentials worth attacking. Teams running Tugtainer earlier than 1.30.6 should treat this as a contained yet concrete risk that warrants prompt remediation, particularly where the product runs in cloud environments with reachable metadata services.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
Tugtainer versions before 1.16.1 transmit authentication credentials through URL query parameters rather than request bo
Server-side template injection in Tugtainer (self-hosted Docker container auto-update tool) versions before 1.30.2 lets
Unauthenticated attackers can reach the Tugtainer Agent's Docker management API and gain effectively full control over c
Improper access control in Tugtainer before version 1.30.3 causes the OIDC login flow to start even when OIDC_ENABLED=fa
Command argument injection in the Tugtainer agent API (POST api/command/run) lets remote attackers append or substitute
In Tugtainer versions before 1.31.3, the OIDC login flow accepts unverified JWT claims from the identity provider's id_t
EUVD-2026-90194
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB