Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as admin user
-
ExploitCraft notification template with nested lambda
-
ExecutionBypass sandbox co_names inspection
-
ImpactExecute arbitrary code via co_consts
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires high-privilege authenticated access to Tautulli prior to version 2.17.0 with ability to create or modify notification templates. Attacker must craft a malicious template using lambda expressions to bypass sandbox restrictions in str_eval() function and execute arbitrary code. |
| Impact | Real-world risk is moderate despite the high 7.5 CVSS score. The CVSS vector CVSS:4.0/AV:N/AC:H/PR:H reveals critical limitations: network-accessible (AV:N) but requires high privileges (PR:H, authenticated administrator access) and high attack complexity (AC:H). This significantly constrains the threat model to scenarios where an attacker has already compromised administrative credentials or represents a malicious insider. The triple-high impact ratings (VC:H/VI:H/VA:H) confirm that successful exploitation grants complete system compromise with arbitrary code execution capabilities in the Tautulli server context. No EPSS score is provided, and no public exploit identified at time of analysis, suggesting this remains a theoretical vulnerability without widespread weaponization. The absence of CISA KEV listing indicates no confirmed active exploitation in real-world environments. From an SSVC perspective, while the technical impact is total system compromise and the vulnerability is likely automatable once credentials are obtained, the high privilege requirement substantially reduces prioritization urgency compared to unauthenticated RCE vulnerabilities. Organizations should prioritize patching based on whether Tautulli administrators are considered high-trust users or potential insider threats. |
| Exploit ScenarioDerived | An attacker with compromised Tautulli administrator credentials accesses the notification configuration interface and crafts a malicious notification template containing a lambda expression designed to bypass sandbox restrictions. For example, the attacker embeds lambda functions that access restricted Python builtins or system modules stored in nested code object constants. When Tautulli processes this template through the str_eval() function during notification triggering (such as on Plex media playback events), the sandbox inspection only examines the outer code object's co_names attribute, completely missing the malicious attribute accesses hidden within the lambda's co_consts. The sandboxed eval() executes the attacker's arbitrary Python code with the privileges of the Tautulli process, potentially enabling system command execution, credential theft from configuration files, lateral movement to the underlying Plex infrastructure, or persistent backdoor installation. The high attack complexity stems from requiring both valid admin credentials and sophisticated understanding of Python's code object structure to craft the bypass payload. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 30, 2026
Remote code execution in Tautulli (Python-based Plex Media Server monitoring tool) versions prior to 2.17.0 allows authenticated administrators to bypass sandbox restrictions in notification templates via lambda expressions, enabling arbitrary Python code execution. The vulnerability exploits a flaw in the str_eval() sandbox implementation that only inspects outer code object names (co_names) while nested lambda code objects store attribute accesses in co_consts, evading security checks. CVSS 7.5 with high attack complexity and high privilege requirement (PR:H) indicates limited real-world risk scope, with no public exploit identified at time of analysis.
RemediationAI
Upgrade immediately to Tautulli version 2.17.0 or later, which contains comprehensive patching of the str_eval() sandbox escape vulnerability. The patched release is available at https://github.com/Tautulli/Tautulli/releases/tag/v2.17.0 with full release notes and installation instructions. The fix implements recursive inspection of nested code objects within the sandbox validation logic, closing the lambda expression bypass vector. Organizations unable to immediately upgrade should implement compensatory controls including restricting administrative access to Tautulli interfaces to trusted network segments only, implementing multi-factor authentication for administrator accounts, auditing existing notification templates for suspicious lambda expressions or complex Python constructs, and monitoring Tautulli logs for unusual notification processing activity. No workaround disables the vulnerable functionality while maintaining notification capabilities, making version upgrade the only complete remediation path.
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 resides in Tautulli's notification_handler.py module, specifically within the str_eval() function that implements a sandboxed eval() mechanism for processing notification text templates. The sandbox's security model relies on whitelisting callable names by examining the code.co_names attribute of compiled Python code objects. However, this approach exhibits a fundamental design flaw in handling nested code structures: when lambda expressions are compiled, Python creates separate nested code objects with their own attribute access patterns stored in code.co_consts rather than the parent's co_names. The sandbox implementation fails to recursively inspect these nested code objects, creating a bypass vector. This is classified as CWE-94 (Improper Control of Generation of Code / Code Injection), representing a classic sandbox escape vulnerability where insufficient input validation allows execution of arbitrary code within a supposedly restricted environment. The affected product is identified as cpe:2.3:a:tautulli:tautulli:*:*:*:*:*:*:*:*, specifically targeting all versions before 2.17.0.
Know when Tautulli 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
CVSS:4.0/AV:N/AC:H/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
3DescriptionGitHub Advisory
Tautulli is a Python based monitoring and tracking tool for Plex Media Server. Prior to version 2.17.0, the str_eval() function in notification_handler.py implements a sandboxed eval() for notification text templates. The sandbox attempts to restrict callable names by inspecting code.co_names of the compiled code object. However, co_names only contains names from the outer code object. When a lambda expression is used, it creates a nested code object whose attribute accesses are stored in code.co_consts, NOT in code.co_names. The sandbox never inspects nested code objects. This issue has been patched in version 2.17.0.
Executive ViewAI
Tautulli versions before 2.17.0 contain a remote code execution vulnerability in notification template processing that allows authenticated administrators to execute arbitrary Python code by circumventing sandbox restrictions. Organizations using Tautulli for Plex Media Server monitoring should prioritize patching to prevent insider threats from privileged users, as the vulnerability requires administrative credentials to exploit.
Apply vendor patch. Until patched: restrict Tautulli administrator access to trusted personnel only; disable or audit all custom notification templates; monitor Tautulli logs for suspicious notification template modifications or execution errors.
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
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Path traversal in Tautulli's /newsletter/image/images API endpoint allows unauthenticated remote attackers to read arbit
Unauthenticated path traversal in Tautulli 2.15.3 and earlier allows remote attackers to read arbitrary files from the s
Path traversal in Tautulli 2.15.3 and earlier allows unauthenticated remote attackers to read arbitrary files through th
Remote code execution in Tautulli through 2.15.3 requires pre-existing administrative access: an attacker who can repoin
Command injection in Tautulli 2.15.3 and earlier lets an authenticated administrator achieve remote code execution on th
In Tautulli 2.1.9, CSRF in the /shutdown URI allows an attacker to shut down the remote media server. Rated medium sever
data/interfaces/default/history.html in Tautulli 2.1.26 has XSS via a crafted Plex username that is mishandled when cons
Unauthenticated server-side request forgery in Tautulli versions prior to 2.17.1 allows remote attackers to coerce the T
Remote code execution in Tautulli versions prior to 2.17.1 allows attackers to achieve unauthenticated RCE on fresh inst
Stored cross-site scripting in Tautulli before 2.17.1 allows low-privilege authenticated users (including guests when gu
Cross-site request forgery in Tautulli versions prior to 2.17.1 allows remote attackers to hijack administrator accounts
Cross-site scripting (XSS) in Tautulli 1.3.10 through 2.16.x allows remote attackers to inject malicious scripts via uns
EUVD-2026-17184
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB