CVE-2025-54538

5.5 MEDIUM

📋 TL;DR

This vulnerability in JetBrains TeamCity allows passwords to be exposed via command line arguments when using the 'hg pull' command. Attackers with access to process listings could potentially capture credentials. This affects all TeamCity administrators and users who utilize Mercurial repositories with the vulnerable versions.

💻 Affected Systems

Products:
  • JetBrains TeamCity
Versions: All versions before 2025.07
Operating Systems: All supported platforms
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects configurations using Mercurial (hg) repositories with password authentication.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could capture administrator credentials, potentially gaining full control over the TeamCity instance and access to source code repositories.

🟠

Likely Case

Local users or attackers with some system access could capture passwords from process listings, leading to credential theft and potential lateral movement.

🟢

If Mitigated

With proper access controls and monitoring, exposure would be limited to authorized users only, reducing the risk of credential theft.

🌐 Internet-Facing: LOW with brief explanation
🏢 Internal Only: MEDIUM with brief explanation

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires access to view process command lines on the TeamCity server, typically requiring some level of system access.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2025.07 or later

Vendor Advisory: https://www.jetbrains.com/privacy-security/issues-fixed/

Restart Required: Yes

Instructions:

1. Backup your TeamCity instance. 2. Download TeamCity 2025.07 or later from the JetBrains website. 3. Follow the TeamCity upgrade documentation for your installation type. 4. Restart TeamCity services after upgrade.

🔧 Temporary Workarounds

Disable Mercurial Repository Usage

all

Temporarily disable or remove Mercurial repositories from TeamCity configurations

Navigate to TeamCity Administration > VCS Roots > Edit affected Mercurial roots > Disable or remove

Use SSH Authentication

all

Switch Mercurial repositories from password authentication to SSH key authentication

Configure Mercurial repositories to use SSH keys instead of passwords in VCS root settings

🧯 If You Can't Patch

  • Restrict access to TeamCity servers to authorized administrators only
  • Implement strict process monitoring and alerting for command line exposure

🔍 How to Verify

Check if Vulnerable:

Check TeamCity version in Administration > Server Administration > Server Health > Version

Check Version:

On TeamCity server: cat /opt/teamcity/version.txt or check web interface

Verify Fix Applied:

Verify version is 2025.07 or later and test Mercurial repository operations

📡 Detection & Monitoring

Log Indicators:

  • Failed authentication attempts for Mercurial repositories
  • Unusual process listings showing command line arguments

Network Indicators:

  • Unusual access patterns to Mercurial repositories

SIEM Query:

Process execution events containing 'hg pull' with password arguments

🔗 References

📤 Share & Export