{"id":75992,"date":"2025-09-19T08:00:25","date_gmt":"2025-09-19T08:00:25","guid":{"rendered":""},"modified":"2025-10-14T17:55:25","modified_gmt":"2025-10-14T23:55:25","slug":"cve-2025-58760-path-traversal-vulnerability-in-tautulli-s-image-api-endpoint","status":"publish","type":"post","link":"https:\/\/www.ameeba.com\/blog\/cve-2025-58760-path-traversal-vulnerability-in-tautulli-s-image-api-endpoint\/","title":{"rendered":"<strong>CVE-2025-58760: Path Traversal Vulnerability in Tautulli\u2019s `\/image` API Endpoint<\/strong>"},"content":{"rendered":"<p><strong>Overview<\/strong><\/p>\n<p>At the intersection of entertainment and technology, Tautulli, a Python-based tool for monitoring and tracking Plex Media Server, has been identified to harbor a serious vulnerability (CVE-2025-58760). This vulnerability affects Tautulli version 2.15.3 and earlier and poses a significant risk to system security and data integrity. The issue rests on the `\/image` API endpoint, which is susceptible to path traversal, allowing unauthenticated attackers to read <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-55454-authenticated-arbitrary-file-upload-vulnerability-in-dootask-v1-0-51\/\"  data-wpil-monitor-id=\"84463\">arbitrary files<\/a> from the server&#8217;s filesystem.<\/p>\n<p><strong>Vulnerability Summary<\/strong><\/p>\n<p>CVE ID: CVE-2025-58760<br \/>\nSeverity: High (8.6 CVSS Score)<br \/>\nAttack Vector: Network<br \/>\nPrivileges Required: None<br \/>\nUser Interaction: None<br \/>\nImpact: <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-22404-potential-system-compromise-due-to-use-after-free-vulnerability\/\"  data-wpil-monitor-id=\"85677\">System compromise<\/a> or data leakage<\/p>\n<p><strong>Affected Products<\/strong><\/p><div id=\"ameeb-3382937946\" 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=\"89815\">Tautulli | v2.15.3<\/a> and earlier<\/p>\n<p><strong>How the Exploit Works<\/strong><\/p>\n<p>The <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-50979-sql-injection-vulnerability-in-nodebb-s-search-categories-api-endpoint\/\"  data-wpil-monitor-id=\"85972\">vulnerability lies in the `\/image` API<\/a> endpoint, used to serve static images from Tautulli&#8217;s data directory to its users. Since the endpoint can be accessed without authentication, it becomes a lucrative target for attackers. By exploiting the path traversal vulnerability, attackers can read <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-9048-arbitrary-file-deletion-vulnerability-in-wptobe-memberships-plugin-in-wordpress\/\"  data-wpil-monitor-id=\"85217\">arbitrary files<\/a> from the application server&#8217;s filesystem, including the `tautulli.db` SQLite database and `config.ini` file. The former contains active JWT tokens, while the latter houses the hashed admin password, <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-41702-critical-jwt-secret-key-vulnerability-in-egos-webgui\/\"  data-wpil-monitor-id=\"89255\">JWT token secret<\/a>, and Plex Media Server token and connection details.<br \/>\nOnce an attacker gets hold of these files, they can potentially crack the <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-48709-clear-text-password-exposure-in-bmc-control-m-database-connection\/\"  data-wpil-monitor-id=\"83462\">password or use a valid JWT token obtained from the database<\/a>. This could lead to <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-27216-privilege-escalation-in-uisp-application-due-to-incorrect-permission-assignment\/\"  data-wpil-monitor-id=\"84387\">privilege escalation<\/a>, enabling the attacker to gain administrative control over the application.<\/p>\n<p><strong>Conceptual Example Code<\/strong><\/p><div id=\"ameeb-907579481\" 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>An attacker could craft a malicious <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-8592-wordpress-inspiro-theme-vulnerability-to-cross-site-request-forgery-csrf\/\"  data-wpil-monitor-id=\"85422\">request to exploit this vulnerability<\/a>, as demonstrated in the conceptual example below:<\/p>\n<pre><code class=\"\" data-line=\"\">GET \/image\/..\/..\/tautulli.db HTTP\/1.1\nHost: target.example.com<\/code><\/pre>\n<p><strong>Mitigation<\/strong><\/p>\n<p>The best mitigation strategy against this vulnerability is to apply the vendor patch, available in Tautulli version 2.16.0. If it&#8217;s not possible to update immediately, employing a Web Application Firewall (WAF) or an Intrusion Detection System (IDS) could serve as temporary mitigation. These systems can be configured to block or alert on suspicious requests that match <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-54261-critical-path-traversal-vulnerability-in-coldfusion\/\"  data-wpil-monitor-id=\"89184\">path traversal<\/a> patterns.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Overview At the intersection of entertainment and technology, Tautulli, a Python-based tool for monitoring and tracking Plex Media Server, has been identified to harbor a serious vulnerability (CVE-2025-58760). This vulnerability affects Tautulli version 2.15.3 and earlier and poses a significant risk to system security and data integrity. The issue rests on the `\/image` API endpoint, [&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,76],"asset_type":[],"severity":[],"exploit_status":[],"class_list":["post-75992","post","type-post","status-publish","format-standard","hentry","category-uncategorized","attack_vector-directory-traversal","attack_vector-privilege-escalation"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/75992","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=75992"}],"version-history":[{"count":10,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/75992\/revisions"}],"predecessor-version":[{"id":82689,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/75992\/revisions\/82689"}],"wp:attachment":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/media?parent=75992"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/categories?post=75992"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/tags?post=75992"},{"taxonomy":"vendor","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/vendor?post=75992"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/product?post=75992"},{"taxonomy":"attack_vector","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/attack_vector?post=75992"},{"taxonomy":"asset_type","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/asset_type?post=75992"},{"taxonomy":"severity","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/severity?post=75992"},{"taxonomy":"exploit_status","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/exploit_status?post=75992"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}