{"id":76010,"date":"2025-09-20T02:07:35","date_gmt":"2025-09-20T02:07:35","guid":{"rendered":""},"modified":"2025-10-14T17:55:25","modified_gmt":"2025-10-14T23:55:25","slug":"cve-2025-58763-command-injection-vulnerability-in-tautulli","status":"publish","type":"post","link":"https:\/\/www.ameeba.com\/blog\/cve-2025-58763-command-injection-vulnerability-in-tautulli\/","title":{"rendered":"<strong>CVE-2025-58763: Command Injection Vulnerability in Tautulli<\/strong>"},"content":{"rendered":"<p><strong>Overview<\/strong><\/p>\n<p>In this blog post, we will detail an important vulnerability that affects Tautulli, a Python-based monitoring and tracking tool for Plex Media Server. The vulnerability, tagged as CVE-2025-58763, involves command injection that can lead to remote code execution. The issue is particularly pertinent to administrators who have cloned Tautulli directly from GitHub and installed it manually. Given the <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-9253-stack-based-buffer-overflow-on-linksys-wi-fi-range-extenders-leading-to-potential-system-compromise\/\"  data-wpil-monitor-id=\"84300\">potential for system<\/a> compromise or data leakage, understanding and addressing this vulnerability is of high importance.<\/p>\n<p><strong>Vulnerability Summary<\/strong><\/p>\n<p>CVE ID: CVE-2025-58763<br \/>\nSeverity: High (CVSS Score 8.0)<br \/>\nAttack Vector: Network<br \/>\nPrivileges Required: Administrator<br \/>\nUser Interaction: Required<br \/>\nImpact: <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-9791-critical-vulnerability-in-tenda-ac20-16-03-08-05-leading-to-potential-system-compromise\/\"  data-wpil-monitor-id=\"84995\">Potential system<\/a> compromise or data leakage<\/p>\n<p><strong>Affected Products<\/strong><\/p><div id=\"ameeb-2500604529\" 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=\"89816\">Tautulli | v2.15.3<\/a> and prior<\/p>\n<p><strong>How the Exploit Works<\/strong><\/p>\n<p>The <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-9779-totolink-a702r-buffer-overflow-vulnerability-in-the-function-sub-4162dc\/\"  data-wpil-monitor-id=\"85133\">vulnerability lies in the `runGit` function<\/a> in `versioncheck.py` of the Tautulli application. This is because `shell=True` is passed to `subproces.Popen`, making this call susceptible to <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2024-46484-critical-os-command-injection-vulnerability-in-trendnet-tv-ip410-va1-0r\/\"  data-wpil-monitor-id=\"85497\">command injection<\/a>. An attacker can <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-56265-arbitrary-file-upload-vulnerability-in-n8n-s-chat-trigger-component\/\"  data-wpil-monitor-id=\"87951\">trigger the vulnerability<\/a> at the `checkout_git_branch` endpoint, which unsanitizedly stores a user-supplied remote and branch name into the `GIT_REMOTE` and `GIT_BRANCH` configuration keys. These keys are fetched and passed directly into `runGit` using a format string, thus allowing for <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-0074-critical-remote-code-execution-vulnerability-in-sdp-discovery\/\"  data-wpil-monitor-id=\"83660\">code execution<\/a> through `$()` interpolation in a command.<\/p>\n<p><strong>Conceptual Example Code<\/strong><\/p><div id=\"ameeb-966098019\" 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>Below is a conceptual example of how the vulnerability might be exploited. This is a pseudocode representation of an attacker-supplied evil branch name for triggering the exploit.<\/p>\n<pre><code class=\"\" data-line=\"\">GIT_BRANCH = &quot;$(malicious_command)&quot;\ncheckout_git_branch(GIT_REMOTE, GIT_BRANCH)<\/code><\/pre>\n<p>In the above example, `malicious_command` is the <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-57771-arbitrary-command-execution-vulnerability-in-roo-code-ai\/\"  data-wpil-monitor-id=\"84827\">command that the attacker wants to execute<\/a> on the server. When `checkout_git_branch` is called, it will trigger the `runGit` function with the malicious command, <a href=\"https:\/\/www.ameeba.com\/blog\/cve-2025-0610-csrf-vulnerability-in-akinsoft-qr-menu-leading-to-potential-system-compromise\/\"  data-wpil-monitor-id=\"85187\">leading to command injection and potentially<\/a> compromising the server.<\/p>\n<p><strong>How to Mitigate the Vulnerability<\/strong><\/p>\n<p>To mitigate this vulnerability, users are advised to apply the vendor patch. Tautulli version 2.16.0 contains a fix for this issue. As a temporary mitigation measure, users can also use a Web Application Firewall (WAF) or an Intrusion Detection System (IDS). It is also recommended to avoid cloning Tautulli directly from GitHub and installing it manually, as this is a prerequisite for the vulnerability.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Overview In this blog post, we will detail an important vulnerability that affects Tautulli, a Python-based monitoring and tracking tool for Plex Media Server. The vulnerability, tagged as CVE-2025-58763, involves command injection that can lead to remote code execution. The issue is particularly pertinent to administrators who have cloned Tautulli directly from GitHub and installed [&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":[79],"product":[],"attack_vector":[78,80],"asset_type":[],"severity":[],"exploit_status":[],"class_list":["post-76010","post","type-post","status-publish","format-standard","hentry","category-uncategorized","vendor-github","attack_vector-injection","attack_vector-rce"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/76010","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=76010"}],"version-history":[{"count":9,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/76010\/revisions"}],"predecessor-version":[{"id":82690,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/posts\/76010\/revisions\/82690"}],"wp:attachment":[{"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/media?parent=76010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/categories?post=76010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/tags?post=76010"},{"taxonomy":"vendor","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/vendor?post=76010"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/product?post=76010"},{"taxonomy":"attack_vector","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/attack_vector?post=76010"},{"taxonomy":"asset_type","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/asset_type?post=76010"},{"taxonomy":"severity","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/severity?post=76010"},{"taxonomy":"exploit_status","embeddable":true,"href":"https:\/\/www.ameeba.com\/blog\/wp-json\/wp\/v2\/exploit_status?post=76010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}