---
id: CVE-2026-87004
title: Tugtainer is a self-hosted app for automating updates of Docker containers
summary: >-
  Tugtainer is a self-hosted app for automating updates of Docker containers.
  Prior to version 1.31.3, when the OIDC login flow completes,
  backend/modules/auth/providers/auth_oidc_provider.py decodes the id_token
  returned by the identity p…
severity: high
cvss: 8.1
cvssVector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-347
vendor: Quenary
product: tugtainer
affected:
  - tugtainer < 1.31.3
published: '2026-09-30'
updated: '2026-09-30'
sourceUpdated: '2026-09-30T19:57:08.043'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-87004'
references:
  - url: >-
      https://github.com/Quenary/tugtainer/commit/b55269b6a3bfd43b0f2f5bd5f137ee0c81b7c2e4
    label: security-advisories@github.com
  - url: 'https://github.com/Quenary/tugtainer/releases/tag/v1.31.3'
    label: security-advisories@github.com
  - url: >-
      https://github.com/Quenary/tugtainer/security/advisories/GHSA-crjc-6vc7-xrfh
    label: security-advisories@github.com
  - url: >-
      https://github.com/Quenary/tugtainer/security/advisories/GHSA-crjc-6vc7-xrfh
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
  - exploit-available
  - cve.org
exploits:
  github: 1
  githubRepos:
    - 'https://github.com/squeeze440/tugtainer-PoC'
  checkedAt: '2026-09-30T20:23:53.994Z'
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-09-30T18:00:13.050961Z'
ingestedAt: '2026-09-30T18:17:24.524Z'
---

## Overview

Tugtainer is a self-hosted app for automating updates of Docker containers. Prior to version 1.31.3, when the OIDC login flow completes, backend/modules/auth/providers/auth_oidc_provider.py decodes the id_token returned by the identity provider's token endpoint using jose.jwt.get_unverified_claims() instead of jwt.decode(). This skips signature verification, audience (aud) validation, issuer (iss) validation, and expiry (exp) checking entirely. The extracted claims (email/sub/preferred_username) are then used directly as the user_id for the resulting Tugtainer session. This issue has been patched in version 1.31.3.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
