Skip to content
Heist/ feed
Back to feed
High

Tautulli Vulnerable to Unauthenticated/Authenticated Remote Code Execution via Newsletter Custom Template Directory

Type: advisorySources: OSV

Tautulli is a Python based monitoring and tracking tool for Plex Media Server. Versions prior to 2.17.1 are vulnerable to remote code execution via the newsletter custom template directory feature. On a fresh install before the setup wizard is completed, all management endpoints are completely unauthenticated. An attacker can create a newsletter agent, point the custom template directory to an attacker-controlled SMB share serving a malicious Mako template, and trigger execution via the newsletter render endpoint, all with zero credentials and no local access to the target system. On a completed install with credentials configured, the same chain is exploitable by any admin. Version 2.17.1 fixes the issue.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-41065
Confirmed fixed CVEs
Not specified
Updated in this feed
5 Nov 2026, 06:07 UTC · Revision 1

Source evidence

Tautulli Vulnerable to Unauthenticated/Authenticated Remote Code Execution via Newsletter Custom Template Directory

core-osv · Original source

Published 4 Jun 2026, 14:17 UTC

Tautulli is a Python based monitoring and tracking tool for Plex Media Server. Versions prior to 2.17.1 are vulnerable to remote code execution via the newsletter custom template directory feature. On a fresh install before the setup wizard is completed, all management endpoints are completely unauthenticated. An attacker can create a newsletter agent, point the custom template directory to an attacker-controlled SMB share serving a malicious Mako template, and trigger execution via the newsletter render endpoint, all with zero credentials and no local access to the target system. On a completed install with credentials configured, the same chain is exploitable by any admin. Version 2.17.1 fixes the issue.

osv:CVE-2026-41065
Complete source record
{
  "id": "e5007ad9b06fdb9e8eb57e2ff606d4d8579c663e813b67e04e1bb36593958063",
  "url": "https://osv.dev/vulnerability/CVE-2026-41065",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Tautulli Vulnerable to Unauthenticated/Authenticated Remote Code Execution via Newsletter Custom Template Directory",
    "summary": "Tautulli is a Python based monitoring and tracking tool for Plex Media Server. Versions prior to 2.17.1 are vulnerable to remote code execution via the newsletter custom template directory feature. On a fresh install before the setup wizard is completed, all management endpoints are completely unauthenticated. An attacker can create a newsletter agent, point the custom template directory to an attacker-controlled SMB share serving a malicious Mako template, and trigger execution via the newsletter render endpoint, all with zero credentials and no local access to the target system. On a completed install with credentials configured, the same chain is exploitable by any admin. Version 2.17.1 fixes the issue.",
    "evidence": "osv:CVE-2026-41065",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-41065",
      "aliases": [
        "CVE-2026-41065",
        "GHSA-68qx-mcf5-3jcp"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:P"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/tautulli/tautulli",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "d7b8147944c745c9dd566ac7839ed21f941d6d1d"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.17.1"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "d7b8147944c745c9dd566ac7839ed21f941d6d1d"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v2.17.1"
                  },
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.17.1"
                      }
                    ],
                    "source": "DESCRIPTION"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v2.17.0",
            "v2.16.1",
            "v2.16.0",
            "v2.15.3",
            "v2.15.2",
            "v2.15.1",
            "v2.15.0",
            "v2.14.6",
            "v2.14.5",
            "v2.14.4",
            "v2.14.3",
            "v2.14.2",
            "v2.14.1-beta",
            "v2.14.0-beta",
            "v2.13.4",
            "v2.13.3",
            "v2.13.2",
            "v2.13.1",
            "v2.13.0",
            "v2.12.5",
            "v2.12.4",
            "v2.12.3",
            "v2.12.2",
            "v2.12.1",
            "v2.12.0",
            "v2.12.0-beta",
            "v2.11.1",
            "v2.11.0",
            "v2.10.5",
            "v2.10.4",
            "v2.10.3",
            "v2.10.2",
            "v2.10.1",
            "v2.10.0",
            "v2.9.7",
            "v2.9.6",
            "v2.9.5",
            "v2.9.4",
            "v2.9.3",
            "v2.9.2",
            "v2.9.1",
            "v2.9.0",
            "v2.9.0-beta",
            "v2.8.1",
            "v2.8.0",
            "v2.8.0-beta",
            "v2.7.7",
            "v2.7.6",
            "v2.7.5",
            "v2.7.4",
            "v2.7.3",
            "v2.7.2",
            "v2.7.1",
            "v2.7.0",
            "v2.7.0-beta",
            "v2.6.10",
            "v2.6.9",
            "v2.6.8",
            "v2.6.7",
            "v2.6.6",
            "v2.6.5",
            "v2.6.4",
            "v2.6.3",
            "v2.6.2",
            "v2.6.1",
            "v2.6.0",
            "v2.5.6",
            "v2.6.0-beta",
            "v2.5.5",
            "v2.5.4",
            "v2.5.3",
            "v2.5.2",
            "v2.5.2-beta",
            "v2.5.1-beta",
            "v2.5.0-beta",
            "v2.1.38",
            "v2.1.37",
            "v2.1.36-beta",
            "v2.1.35-beta",
            "v2.1.34",
            "v2.1.33",
            "v2.1.32",
            "v2.1.31",
            "v2.1.31-beta",
            "v2.1.30-beta",
            "v2.1.29-beta",
            "v2.1.28",
            "v2.1.27-beta",
            "v2.1.26",
            "v2.1.25",
            "v2.1.24-beta",
            "v2.1.23-beta",
            "v2.1.22",
            "v2.1.21",
            "v2.1.20",
            "v2.1.20-beta",
            "v2.1.19-beta",
            "v2.1.18",
            "v2.1.17-beta",
            "v2.1.16-beta",
            "v2.1.14",
            "v2.1.13",
            "v2.1.12",
            "v2.1.11-beta",
            "v2.1.10-beta",
            "v2.1.9",
            "v2.1.8-beta",
            "v2.1.7-beta",
            "v2.1.6-beta",
            "v2.1.5-beta",
            "v2.1.4",
            "v2.1.3-beta",
            "v2.1.2-beta",
            "v2.1.1-beta",
            "v2.1.0-beta",
            "v2.0.23-beta",
            "v2.0.22",
            "v2.0.22-beta",
            "v2.0.21-beta",
            "v2.0.20-beta",
            "v2.0.19-beta",
            "v2.0.18-beta",
            "v2.0.17-beta",
            "v2.0.16-beta",
            "v2.0.15-beta",
            "v2.0.14-beta",
            "v2.0.13-beta",
            "v2.0.12-beta",
            "v2.0.11-beta",
            "v2.0.10-beta",
            "v2.0.9-beta",
            "v2.0.8-beta",
            "v2.0.7-beta",
            "v2.0.6-beta",
            "v2.0.5-beta",
            "v2.0.4-beta",
            "v2.0.3-beta",
            "v2.0.2-beta",
            "v2.0.1-beta",
            "v2.0.0-beta",
            "v1.4.25",
            "v1.4.24",
            "v1.4.23",
            "v1.4.22",
            "v1.4.21",
            "v1.4.20",
            "v1.4.19",
            "v1.4.18",
            "v1.4.17",
            "v1.4.16",
            "v1.4.15",
            "v1.4.14",
            "v1.4.13",
            "v1.1.3",
            "v1.1.2",
            "v1.1.1",
            "v1.1.0",
            "v1.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-41065.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:43.225698074Z",
      "provider": "osv",
      "references": [
        "https://github.com/Tautulli/Tautulli/releases/tag/v2.17.1",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/41xxx/CVE-2026-41065.json",
        "https://github.com/Tautulli/Tautulli/security/advisories/GHSA-68qx-mcf5-3jcp",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-41065"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-1336"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/41xxx/CVE-2026-41065.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-41065",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 510918,
  "published_at": "2026-06-04T14:17:13.238+00:00"
}