RooCodeInc Roo-Code up to 3.20.2 Configuration File roo/mcp.json command injection
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.8 | $0-$5k | 0.00 |
Summary
A vulnerability classified as critical has been found in RooCodeInc Roo-Code up to 3.20.2. The impacted element is an unknown function of the file roo/mcp.json of the component Configuration File Handler. This manipulation causes command injection. The identification of this vulnerability is CVE-2025-53098. It is possible to initiate the attack remotely. There is no exploit available. It is recommended to upgrade the affected component.
Details
A vulnerability classified as problematic was found in RooCodeInc Roo-Code up to 3.20.2. Affected by this vulnerability is some unknown processing of the file roo/mcp.json of the component Configuration File Handler. The manipulation with an unknown input leads to a command injection vulnerability. The CWE definition for the vulnerability is CWE-77. The product constructs all or part of a command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended command when it is sent to a downstream component. As an impact it is known to affect confidentiality. The summary by CVE is:
Roo Code is an AI-powered autonomous coding agent. The project-specific MCP configuration for the Roo Code agent is stored in the `.roo/mcp.json` file within the VS Code workspace. Because the MCP configuration format allows for execution of arbitrary commands, prior to version 3.20.3, it would have been possible for an attacker with access to craft a prompt to ask the agent to write a malicious command to the MCP configuration file. If the user had opted-in to auto-approving file writes within the project, this would have led to arbitrary command execution. This issue is of moderate severity, since it requires the attacker to already be able to submit prompts to the agent (for instance through a prompt injection attack), for the user to have MCP enabled (on by default), and for the user to have enabled auto-approved file writes (off by default). Version 3.20.3 fixes the issue by adding an additional layer of opt-in configuration for auto-approving writing to Roo's configuration files, including all files within the `.roo/` folder.
It is possible to read the advisory at github.com. This vulnerability is known as CVE-2025-53098 since 06/25/2025. The exploitation appears to be difficult. The attack can be launched remotely. The exploitation doesn't need any form of authentication. Technical details of the vulnerability are known, but there is no available exploit. The attack technique deployed by this issue is T1202 according to MITRE ATT&CK.
By approaching the search of inurl:roo/mcp.json it is possible to find vulnerable targets with Google Hacking.
Upgrading to version 3.20.3 eliminates this vulnerability. Applying the patch 7d0b22f9e659dc6c26aab0bacbea27874986e772 is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the vulnerability database at EUVD (EUVD-2025-19433). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Vendor
Name
Version
License
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.9VulDB Meta Temp Score: 5.8
VulDB Base Score: 3.7
VulDB Temp Score: 3.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 8.1
CNA Vector (GitHub_M): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Command injectionCWE: CWE-77 / CWE-74 / CWE-707
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
Google Hack: 🔒
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Roo-Code 3.20.3
Patch: 7d0b22f9e659dc6c26aab0bacbea27874986e772
Timeline
06/25/2025 CVE reserved06/28/2025 Advisory disclosed
06/28/2025 VulDB entry created
07/01/2025 VulDB entry last update
Sources
Product: github.comAdvisory: GHSA-5x8h-m52g-5v54
Status: Confirmed
CVE: CVE-2025-53098 (🔒)
GCVE (CVE): GCVE-0-2025-53098
GCVE (VulDB): GCVE-100-314299
EUVD: 🔒
Entry
Created: 06/28/2025 08:51Updated: 07/01/2025 16:56
Changes: 06/28/2025 08:51 (68), 06/28/2025 09:07 (1), 07/01/2025 16:56 (6)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.